├── .github
└── workflows
│ ├── togithub.yml
│ └── tome.yml-bak
├── .gitignore
├── .markdownlint.json
├── README.md
├── createjson.js
├── docs
├── .vitepress
│ ├── ai.json
│ ├── code.json
│ ├── config.mts
│ └── theme
│ │ ├── default.cur
│ │ ├── index.ts
│ │ └── style.css
├── ai
│ ├── 2024-10-11-gs.md
│ ├── 2025-03-29-29种风格.md
│ ├── 2025-03-29-公众号封面图.md
│ ├── 2025-03-29-商务简约信息卡片风.md
│ ├── 2025-03-29-奢华自然意境风.md
│ ├── 2025-03-29-小红书封面图.md
│ ├── 2025-03-29-数字极简票券风.md
│ ├── 2025-03-29-新构成主义教学风.md
│ ├── 2025-03-29-新潮工业反叛风.md
│ ├── 2025-03-29-极简格栅主义封面风格.md
│ ├── 2025-03-29-柔和科技卡片风.md
│ ├── 2025-03-29-流动科技蓝风格.md
│ ├── 2025-03-29-现代商务资讯卡片风.md
│ ├── 2025-03-29-软萌知识卡片风.md
│ ├── 2025-03-29-阅读总结.md
│ ├── 2025-03-29.md
│ ├── 2025-04-01-文章改写.md
│ ├── 2025-04-03-润色文章.md
│ └── index.md
├── article
│ ├── code
│ │ ├── 2022-05-07-git.md
│ │ ├── 2022-05-10-vscode.md
│ │ ├── 2022-05-11-linux.md
│ │ ├── 2022-05-12-vue3.md
│ │ ├── 2022-05-15-guifan.md
│ │ ├── 2022-05-20-typescript.md
│ │ ├── 2022-05-21-npm.md
│ │ ├── 2022-05-23-taro.md
│ │ ├── 2022-05-24-react.md
│ │ ├── 2022-05-25-build-optimize.md
│ │ ├── 2022-05-26-nodejs.md
│ │ ├── 2022-05-27-tauri.md
│ │ ├── 2022-05-28-mysql.md
│ │ ├── 2022-05-29-leaflet.md
│ │ ├── 2022-05-30-javascript.md
│ │ ├── 2022-06-01-go.md
│ │ ├── 2022-06-02-echarts.md
│ │ ├── 2022-06-03-ast.md
│ │ ├── 2022-06-04-pnpm.md
│ │ ├── 2022-06-05-router.md
│ │ ├── 2022-06-06-code.md
│ │ ├── 2022-08-11-pnpm.md
│ │ ├── 2022-08-16-commitizen.md
│ │ ├── 2022-08-17-docker.md
│ │ ├── 2022-08-17-nginx.md
│ │ ├── 2022-08-18-commit.md
│ │ ├── 2022-08-18-taro.md
│ │ ├── 2022-08-20-apifox.md
│ │ ├── 2022-08-22-nginx 负载均衡.md
│ │ ├── 2022-08-24-vim.md
│ │ ├── 2022-08-25-hub docker.md
│ │ ├── 2022-08-25-wujie.md
│ │ ├── 2022-08-26-vue3原理.md
│ │ ├── 2022-08-31-.net core.md
│ │ ├── 2022-09-01-axios工具.md
│ │ ├── 2022-09-01-axios工具函数判断纯对象.md
│ │ ├── 2022-09-01-axios正则.md
│ │ ├── 2022-09-01-javascript-ioc.md
│ │ ├── 2022-09-21-history.md
│ │ ├── 2022-09-26-axios-utils.md
│ │ ├── 2022-10-09-http缓存.md
│ │ ├── 2022-10-11-.net6.0.md
│ │ ├── 2022-10-15-后端.md
│ │ ├── 2022-10-16-mysql.md
│ │ ├── 2022-10-26-redis.md
│ │ ├── 2022-10-28-elasticsearch.md
│ │ ├── 2022-11-06-docker.md
│ │ ├── 2022-11-08-字典.md
│ │ ├── 2022-11-09-marridb.md
│ │ ├── 2022-11-14-docker-mysql.md
│ │ ├── 2022-11-14-mysql-isnull-isnotnull.md
│ │ ├── 2022-11-15-linux.md
│ │ ├── 2022-11-16-token.md
│ │ ├── 2022-11-18-linux 监控指引.md
│ │ ├── 2022-11-21-nginx.md
│ │ ├── 2022-11-23-Aop.md
│ │ ├── 2022-11-23-环境配置.md
│ │ ├── 2022-11-24-项目上线.md
│ │ ├── 2022-11-25-mysql删除重复数据.md
│ │ ├── 2022-11-26-linux mysql 慢查询.md
│ │ ├── 2022-11-28-正则.md
│ │ ├── 2022-11-30-.net-core异步.md
│ │ ├── 2022-12-01-docker-compose.md
│ │ ├── 2022-12-03-Mysql学习了解总结.md
│ │ ├── 2022-12-09-zx.md
│ │ ├── 2022-12-14-linux.md
│ │ ├── 2022-12-20-mysql.md
│ │ ├── 2022-12-20-ubuntu.md
│ │ ├── 2022-12-20-zabbix.md
│ │ ├── 2022-12-21-总结.md
│ │ ├── 2022-12-24-mysql主从.md
│ │ ├── 2022-12-28-linux-h.md
│ │ ├── 2023--8-15-dvs.md
│ │ ├── 2023-01-04-docker.md
│ │ ├── 2023-01-06-docker-consul.md
│ │ ├── 2023-01-09-nacos.md
│ │ ├── 2023-01-09-ocelot.md
│ │ ├── 2023-01-09-软考参考.md
│ │ ├── 2023-01-10-EventBus.md
│ │ ├── 2023-01-10-k8s.md
│ │ ├── 2023-01-11-docker-sqlserver.md
│ │ ├── 2023-01-11-go.md
│ │ ├── 2023-01-31-docker-dotnet.md
│ │ ├── 2023-02-01-中医.md
│ │ ├── 2023-02-08-面试整理.md
│ │ ├── 2023-02-10-单例模式.md
│ │ ├── 2023-02-13-linux-mariadb.md
│ │ ├── 2023-02-21-chatgpt.md
│ │ ├── 2023-02-21-sql.md
│ │ ├── 2023-02-22-go-gin.md
│ │ ├── 2023-03-15-embdding.md
│ │ ├── 2023-03-17-supabase.md
│ │ ├── 2023-03-23-ai虚拟人.md
│ │ ├── 2023-03-30-yt-dlp.md
│ │ ├── 2023-03-31-Midjourney.md
│ │ ├── 2023-03-31-总结.md
│ │ ├── 2023-04-03-openai.md
│ │ ├── 2023-04-03-文冠.md
│ │ ├── 2023-04-04-llama-index.md
│ │ ├── 2023-04-11-fastgpt.md
│ │ ├── 2023-04-23-langchain.md
│ │ ├── 2023-05-17-deplay.md
│ │ ├── 2023-05-23-vmware.md
│ │ ├── 2023-05-24-docker-mysql.md
│ │ ├── 2023-05-24-mysql.md
│ │ ├── 2023-05-26-mongodb.md
│ │ ├── 2023-05-26-uni-app.md
│ │ ├── 2023-05-29-ChatGPT.md
│ │ ├── 2023-05-31-fastgpt.md
│ │ ├── 2023-05-31-flow.md
│ │ ├── 2023-06-02-robot.md
│ │ ├── 2023-06-21-prompt.md
│ │ ├── 2023-06-25-amazon.md
│ │ ├── 2023-07-01-github token.md
│ │ ├── 2023-07-21-openai.md
│ │ ├── 2023-07-24-llama2.md
│ │ ├── 2023-07-26-pgvector.md
│ │ ├── 2023-07-27-wenxinyiyan.md
│ │ ├── 2023-07-31-python.md
│ │ ├── 2023-08-08-map.md
│ │ ├── 2023-08-08-规范总结.md
│ │ ├── 2023-08-14-唐.md
│ │ ├── 2023-09-19-bun.md
│ │ ├── 2023-09-19-linux-nodejs.md
│ │ ├── 2023-09-27-podman.md
│ │ ├── 2023-10-07-存储过程.md
│ │ ├── 2023-10-09-mysql.md
│ │ ├── 2023-10-14-monitor.md
│ │ ├── 2023-10-26-培训.md
│ │ ├── 2023-11-01-xe.md
│ │ ├── 2023-11-09-shell.md
│ │ ├── 2023-11-15-docker-mysql.md
│ │ ├── 2023-11-16-webfunny.md
│ │ ├── 2023-11-20-rabbitmq.md
│ │ ├── 2023-11-21-dotnetcore.md
│ │ ├── 2023-11-24-goploy.md
│ │ ├── 2023-11-28-redis.md
│ │ ├── 2023-11-30-linqkit.md
│ │ ├── 2023-12-23-net8.0.md
│ │ ├── 2023-12-28-debian.md
│ │ ├── 2023-12-28-ubuntu.md
│ │ ├── 2024-01-02-fastgpt.md
│ │ ├── 2024-01-15-zabbix.md
│ │ ├── 2024-02-24-埋点.md
│ │ ├── 2024-02-28-seq.md
│ │ ├── 2024-03-03-整理.md
│ │ ├── 2024-03-07-youtobe.md
│ │ ├── 2024-03-14-FigureAI.md
│ │ ├── 2024-03-14-claude-haiku.md
│ │ ├── 2024-03-14-masike.md
│ │ ├── 2024-03-15-aoteman copy.md
│ │ ├── 2024-03-15-docker.md
│ │ ├── 2024-03-18-sora ai.md
│ │ ├── 2024-03-20-llm.md
│ │ ├── 2024-03-21-MC.md
│ │ ├── 2024-03-22-GPT-5.md
│ │ ├── 2024-03-23-黄教主.md
│ │ ├── 2024-03-29-读一人企业方法论.md
│ │ ├── 2024-03-30-rpa.md
│ │ ├── 2024-04-04-mac-docker.md
│ │ ├── 2024-04-07-tailscale-termux.md
│ │ ├── 2024-04-10-vitepress.md
│ │ ├── 2024-04-11-gemini.md
│ │ ├── 2024-04-30-video2blog.md
│ │ ├── 2024-05-08-whisper.md
│ │ ├── 2024-05-14-openharmony.md
│ │ ├── 2024-05-29-cocos.md
│ │ ├── 2024-06-03-kongtou.md
│ │ ├── 2024-06-04-heng.md
│ │ ├── 2024-06-05-query.md
│ │ ├── 2024-06-13-comfyui.md
│ │ ├── 2024-06-24-lf.md
│ │ ├── 2024-06-28-java.md
│ │ ├── 2024-07-09-baidumap.md
│ │ ├── 2024-07-19-tools.md
│ │ ├── 2024-07-24-query.md
│ │ ├── 2024-08-02-wiki.md
│ │ ├── 2024-08-19-window-docker.md
│ │ ├── 2024-08-23-openobserve.md
│ │ ├── 2024-09-03-mysql.md
│ │ ├── 2024-09-03-在线excel.md
│ │ ├── 2024-10-11-gs.md
│ │ ├── 2024-10-15-qrcode.md
│ │ ├── 2024-10-21-zx.md
│ │ ├── 2024-10-30-lin-linux.md
│ │ ├── 2024-11-19.-自主填报配置sql.md
│ │ ├── 2024-11-22-台账.md
│ │ ├── 2024-11-29-java.md
│ │ ├── 2024-12-07-univer.md
│ │ ├── 2024-12-13-散装油迁移.md
│ │ ├── 2024-12-14-散装油迁移-his.md
│ │ ├── 2024-12-24-小程序订阅消息.md
│ │ ├── 2024-12-28-独立站.md
│ │ ├── 2025-01-03-nas.md
│ │ ├── 2025-01-20-ready.md
│ │ ├── 2025-02-10-deepseek.md
│ │ ├── 2025-03-10-知识库.md
│ │ ├── 2025-0306-ag.md
│ │ ├── 2025-04-12-anythingllm.md
│ │ ├── 2025-04-15-vue.md
│ │ ├── 2025-04-18-ai-proxy.md
│ │ ├── index.js
│ │ └── index.md
│ ├── daily
│ │ ├── 2021-01.md
│ │ ├── 2021-02.md
│ │ ├── 2021-03.md
│ │ ├── 2021-04.md
│ │ ├── 2021-05.md
│ │ ├── 2021-06.md
│ │ ├── 2021-07.md
│ │ ├── 2021-08.md
│ │ ├── 2021-09.md
│ │ ├── 2021-10.md
│ │ ├── 2021-11.md
│ │ ├── 2021-12.md
│ │ ├── 2022-01.md
│ │ ├── 2022-02.md
│ │ ├── 2022-03.md
│ │ ├── 2022-04.md
│ │ ├── 2022-05.md
│ │ ├── 2022-06.md
│ │ ├── 2022-07.md
│ │ ├── 2022-08.md
│ │ ├── 2022-09.md
│ │ ├── 2022-10.md
│ │ ├── 2022-11.md
│ │ ├── 2022-12.md
│ │ ├── 2023-01.md
│ │ ├── 2023-02.md
│ │ ├── 2023-03.md
│ │ ├── 2023-04.md
│ │ ├── 2023-05.md
│ │ ├── 2023-08.md
│ │ ├── 2023-09.md
│ │ ├── 2023-10.md
│ │ ├── 2023-11.md
│ │ ├── 2023-12.md
│ │ ├── 2024-01.md
│ │ ├── 2024-02.md
│ │ ├── 2024-03.md
│ │ ├── 2024-04.md
│ │ ├── 2024-05.md
│ │ ├── 2024-06.md
│ │ ├── 2024-07.md
│ │ ├── 2024-08.md
│ │ ├── 2024-09.md
│ │ ├── 2024-10.md
│ │ ├── 2024-11.md
│ │ ├── 2024-12.md
│ │ ├── 2025-01.md
│ │ ├── 2025-02.md
│ │ ├── 2025-03.md
│ │ ├── 2025-04.md
│ │ ├── 2025-05.md
│ │ ├── 2025-06.md
│ │ ├── GPT-4.md
│ │ ├── index.md
│ │ ├── install.md
│ │ └── zx.md
│ ├── economy
│ │ ├── 2024-09-18-美元降息潮开启.md
│ │ ├── 2024-11-05-为何比特币多头加倍押注特朗普将再度入主白宫?.md
│ │ ├── 2024-11-11-浅谈币圈集中交易类型的风险比对.md
│ │ ├── 2024-11-12-币安接口.md
│ │ ├── 2024-11-20-股市的由来.md
│ │ ├── 2024-11-30-股市.md
│ │ ├── 2025-03-10-复盘.md
│ │ ├── index.md
│ │ └── time-line.vue
│ └── life
│ │ ├── 2021-12.md
│ │ ├── 2022-06.md
│ │ ├── 2022-07-01.md
│ │ ├── 2022-07.md
│ │ ├── 2023-05-22.md
│ │ ├── 2025-05-15.md
│ │ └── index.md
├── components
│ └── group.vue
├── friendly
│ └── info.md
├── index.md
├── me
│ ├── about.md
│ ├── index.md
│ └── music.md
├── public
│ ├── home.svg
│ ├── html
│ │ └── lyrics
│ │ │ ├── keneng.html
│ │ │ └── wfxlc.html
│ └── logo.svg
└── views
│ ├── game
│ ├── index.md
│ ├── pinyin.vue
│ └── shuerte.vue
│ └── tool
│ ├── 2024-11-11-wsj.md
│ ├── aes-decrypt-tool.vue
│ ├── base64-image.vue
│ ├── base64ImageViewer.vue
│ ├── image-compress.vue
│ └── index.md
├── excalidraw
└── aehyok
│ ├── .obsidian
│ ├── app.json
│ ├── appearance.json
│ ├── community-plugins.json
│ ├── core-plugins-migration.json
│ ├── core-plugins.json
│ ├── graph.json
│ ├── plugins
│ │ └── obsidian-excalidraw-plugin
│ │ │ ├── data.json
│ │ │ ├── main.js
│ │ │ ├── manifest.json
│ │ │ └── styles.css
│ ├── themes
│ │ └── Minimal
│ │ │ ├── manifest.json
│ │ │ └── theme.css
│ ├── types.json
│ └── workspace.json
│ ├── 08-02 19.45.52.excalidraw.md
│ ├── 08-06-excel导入.excalidraw.md
│ ├── Fonts
│ └── 字语青梅硬笔.ttf
│ └── 欢迎.md
├── font
└── 字语青梅硬笔.ttf
├── package.json
├── pdf
├── tech
│ └── JavaScript正则表达式迷你书(1.1版).pdf
├── 《命悬一线,我不放手:ICU生死录》薄世宁.pdf
├── 《美国商业400年.pdf
├── 乡下人的悲歌.pdf
├── 制造贫困:一个美国问题.pdf
├── 拿破仑传.pdf
├── 独立战争与世界重启:一部新的十八世纪晚期全球史.pdf
└── 病毒下层社会:疾病与不平等在美国的碰撞.pdf
└── pnpm-lock.yaml
/.github/workflows/togithub.yml:
--------------------------------------------------------------------------------
1 | name: build to my github
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | jobs:
9 | deploy:
10 | runs-on: ubuntu-latest
11 | # strategy:
12 | # matrix:
13 | # node-version: [node16]
14 | steps:
15 | - uses: actions/checkout@v3
16 | - uses: actions/setup-node@v3
17 | with:
18 | node-version: 18
19 | - name: Install PNPM
20 | run: npm i -g pnpm
21 | - name: Install & Build
22 | run: pnpm install --no-frozen-lockfile && pnpm run build
23 |
24 | # - name: CreateTag
25 | # run git tag -a
26 | - name: Deploy
27 | uses: peaceiris/actions-gh-pages@v3
28 | with:
29 | github_token: ${{ secrets.GITHUB_TOKEN }}
30 | publish_dir: docs/.vitepress/dist
--------------------------------------------------------------------------------
/.github/workflows/tome.yml-bak:
--------------------------------------------------------------------------------
1 | name: build to my server
2 | on:
3 | push:
4 | branches:
5 | - main # 这里表示push到main分支就会触发流程
6 | jobs:
7 | build-and-deploy:
8 | runs-on: ubuntu-latest
9 | steps:
10 | # 这是github官方的一个action,用于clone该仓库的源码到工作流中,
11 | - name: Checkout 🛎️
12 | uses: actions/checkout@v2
13 | with:
14 | persist-credentials: false
15 |
16 | - name: Build
17 | run: |
18 | npm install # 安装依赖
19 | npm run build # 执行打包
20 |
21 | # 连接到ssh,并且做一个拷贝操作的action
22 | - name: Deploy 🚀
23 | uses: appleboy/scp-action@master
24 | with:
25 | host: ${{ secrets.AK_HOST }} # 服务器host
26 | username: ${{ secrets.AK_USER }} # 服务器用户名
27 | password: ${{ secrets.AK_PASS }} # 服务器密码
28 | source: './docs/.vitepress/dist/*' # 需要上传的文件, 多文件使用逗号隔开
29 | target: '/usr/local/qiankun/blog' # 上传到服务器的什么位置
30 |
31 | # uses: cross-the-world/scp-pipeline@master
32 | # env:
33 | # WELCOME: "ssh scp ssh pipelines"
34 | # LASTSSH: "Doing something after copying"
35 | # with:
36 | # host: ${{ secrets.AK_HOST }}
37 | # user: ${{ secrets.AK_USER }}
38 | # pass: ${{ secrets.AK_PASS }}
39 | # connect_timeout: 10s
40 | # local: './docs/.vitepress/dist/*' # 这里是下一步要创建的vue项目构建完成后的静态资源路径
41 | # remote: /usr/local/qiankun/blog # 这里是 step1 中,在服务器上创建用于存放静态资源的文件夹
42 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | CONTRIBUTING.md
5 | npm-debug.log
6 | yarn-debug.log*
7 | yarn-error.log*
8 | yarn.lock
9 | # package-lock.json
10 | test/unit/coverage
11 | test/e2e/reports
12 | selenium-debug.log
13 |
14 | # Editor directories and files
15 | .idea
16 | .vscode
17 | *.suo
18 | *.ntvs*
19 | *.njsproj
20 | *.sln
21 |
22 | # ad
23 | cache
24 |
--------------------------------------------------------------------------------
/.markdownlint.json:
--------------------------------------------------------------------------------
1 | {
2 | "MD033": false,
3 | "MD041": false,
4 | "MD047": false
5 | }
--------------------------------------------------------------------------------
/createjson.js:
--------------------------------------------------------------------------------
1 | const fs = require('fs');
2 | const path = require('path');
3 |
4 |
5 | console.log(process.argv[3]," argbv")
6 | const directory = process.argv[3];
7 | const folderPath = `./docs/${directory}/`; // 文件夹路径
8 | const outputFilePath = `./docs/.vitepress/${directory}.json`; // 输出的 JSON 文件路径
9 |
10 | fs.readdir(folderPath, (err, files) => {
11 | if (err) {
12 | return console.error('无法读取文件夹:', err);
13 | }
14 |
15 | // 按年份对文件进行分组
16 | const groupedData = {};
17 |
18 | files.forEach(file => {
19 | const match = file.match(/^(\d{4})-(\d{2})/); // 匹配 YYYY-MM 格式
20 | if (match) {
21 | const year = match[1];
22 | if (!groupedData[year]) {
23 | groupedData[year] = [];
24 | }
25 |
26 | // 去掉文件扩展名
27 | const fileNameWithoutExtension = path.basename(file, path.extname(file));
28 |
29 | // 将每个文件信息添加到对应年份的数组中
30 | groupedData[year].push({
31 | text: fileNameWithoutExtension, // 文件名不带后缀
32 | link: `/article/${directory}/${fileNameWithoutExtension}` // 链接不带后缀
33 | });
34 | }
35 | });
36 |
37 | const obj = {
38 | "ai": "-ai资讯",
39 | "代码开发": "-知识点积累"
40 | }
41 |
42 | // 将分组数据结构转换成所需格式并按年份倒序排序
43 | const outputData = Object.keys(groupedData)
44 | .sort((a, b) => b - a) // 年份倒序排序
45 | .map(year => ({
46 | text: `${year}${obj[directory]}`,
47 | items: groupedData[year]
48 | }));
49 |
50 | // 写入 JSON 文件
51 | fs.writeFile(outputFilePath, JSON.stringify(outputData, null, 2), 'utf8', (err) => {
52 | if (err) {
53 | return console.error('无法写入 JSON 文件:', err);
54 | }
55 | console.log('结构化数据已成功写入到', outputFilePath);
56 | });
57 | });
58 |
--------------------------------------------------------------------------------
/docs/.vitepress/ai.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "text": "2024-ai资讯",
4 | "items": [
5 | {
6 | "text": "2024-10-11-gs",
7 | "link": "/ai/2024-10-11-gs"
8 | }
9 | ]
10 | }
11 | ]
--------------------------------------------------------------------------------
/docs/.vitepress/theme/default.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/.vitepress/theme/default.cur
--------------------------------------------------------------------------------
/docs/.vitepress/theme/index.ts:
--------------------------------------------------------------------------------
1 | // https://vitepress.dev/guide/custom-theme
2 | import { h } from 'vue'
3 | import type { Theme } from 'vitepress'
4 | import DefaultTheme from 'vitepress/theme'
5 | import './style.css'
6 |
7 | export default {
8 | extends: DefaultTheme,
9 | Layout: () => {
10 | return h(DefaultTheme.Layout, null, {
11 | // https://vitepress.dev/guide/extending-default-theme#layout-slots
12 | })
13 | },
14 | enhanceApp({ app, router, siteData }) {
15 | // ...
16 | }
17 | } satisfies Theme
18 |
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-公众号封面图.md:
--------------------------------------------------------------------------------
1 | # 你是一位优秀的网页和营销视觉设计师,具有丰富的UI/UX设计经验,曾为众多知名品牌打造过引人注目的营销视觉,擅长将现代设计趋势与实用营销策略完美融合。
2 | 请使用HTML和CSS代码按照设计风格要求部分创建一个的微信公众号封面图片组合布局。我需要的设计应具有强烈的视觉冲击力和现代感。
3 |
4 | ## 基本要求:
5 |
6 | - **尺寸与比例**:
7 | - 整体比例严格保持为3.35:1
8 | - 容器高度应随宽度变化自动调整,始终保持比例
9 | - 左边区域放置2.35:1比例的主封面图
10 | - 右边区域放置1:1比例的朋友圈分享封面
11 | - **布局结构**:
12 | - 朋友圈封面只需四个大字铺满整个区域(上面两个下面两个)
13 | - 文字必须成为主封面图的视觉主体,占据页面至少70%的空间
14 | - 两个封面共享相同的背景色和点缀装饰元素
15 | - 最外层卡片需要是直角
16 | - **技术实现**:
17 | - 使用纯HTML和CSS编写
18 | - 如果用户给了背景图片的链接需要结合背景图片排版
19 | - 严格实现响应式设计,确保在任何浏览器宽度下都保持16:10的整体比例
20 | - 在线 CDN 引用 Tailwind CSS 来优化比例和样式控制
21 | - 内部元素应相对于容器进行缩放,确保整体设计和文字排版比例一致
22 | - 使用Google Fonts或其他CDN加载适合的现代字体
23 | - 可引用在线图标资源(如Font Awesome)
24 | - 代码应可在现代浏览器中直接运行
25 | - 提供完整HTML文档与所有必要的样式
26 | - 最下方增加图片下载按钮,点击后下载整张图片
27 |
28 | ## 用户输入内容
29 | - 公众号标题为:[一套提示词帮你实现小红书、公众号封面自由,Deepseek V3也能用!]
30 | - emoji图片:
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 | 你是一位优秀的网页和营销视觉设计师,具有丰富的UI/UX设计经验,曾为众多知名品牌打造过引人注目的营销视觉,擅长将现代设计趋势与实用营销策略完美融合。
45 | 请使用HTML和CSS代码按照设计风格要求部分创建一个的微信公众号封面图片组合布局。我需要的设计应具有强烈的视觉冲击力和现代感。
46 |
47 | ## 基本要求:
48 |
49 | - **尺寸与比例**:
50 | - 整体比例严格保持为2.35:1
51 | - 容器高度应随宽度变化自动调整,始终保持比例
52 | - **布局结构**:
53 | - 文字必须成为主封面图的视觉主体,占据页面至少70%的空间
54 | - 封面添加点缀装饰元素
55 | - 最外层卡片需要是直角
56 | - **技术实现**:
57 | - 使用纯HTML和CSS编写
58 | - 如果用户给了背景图片的链接需要结合背景图片排版
59 | - 严格实现响应式设计,确保在任何浏览器宽度下都保持16:10的整体比例
60 | - 在线 CDN 引用 Tailwind CSS 来优化比例和样式控制
61 | - 内部元素应相对于容器进行缩放,确保整体设计和文字排版比例一致
62 | - 使用Google Fonts或其他CDN加载适合的现代字体
63 | - 可引用在线图标资源(如Font Awesome)
64 | - 代码应可在现代浏览器中直接运行
65 | - 提供完整HTML文档与所有必要的样式
66 | - 最后直接返回给我完整的html即可,无需其他多余的思考过程
67 |
68 | ## 用户输入内容
69 | - 公众号标题为:
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-商务简约信息卡片风.md:
--------------------------------------------------------------------------------
1 | # 软萌知识卡片风
2 |
3 | ## 设计风格
4 |
5 | - **柔和色彩基调**:以粉色、米黄、淡紫等温和色调为主,营造轻松友好氛围
6 | - **圆角卡片结构**:所有内容采用大圆角矩形或椭圆形容器,没有尖锐边角
7 | - **简约留白处理**:适当留白增强可读性,避免视觉拥挤感
8 | - **渐变色背景**:部分卡片使用柔和渐变背景,增加层次感和温暖感
9 | - **情感化设计**:整体风格偏向亲和、轻松,不过分严肃正式
10 | - **统一视觉语言**:各卡片尽管内容不同,但维持一致的设计语言
11 | - **轻量化边框**:红色封面使用笔记本线条等轻量级边框元素增加趣味性
12 |
13 | ## 文字排版风格
14 |
15 | - **大字号标题**:标题文字加粗加大,吸引第一眼注意
16 | - **紧凑段落布局**:正文内容分段清晰,段落间距适中
17 | - **感叹号点缀**:频繁使用感叹号增强情感表达和亲近感
18 | - **表情符号融入**:在文字中加入"」"等特殊符号增加表现力
19 | - **重点句加粗**:关键信息或总结性内容加粗处理
20 | - **自然语言表达**:采用口语化、对话式的表达方式,降低阅读门槛
21 | - **多层级排版**:标题、副标题、正文、强调语等形成清晰的阅读层级
22 |
23 | ## 视觉元素风格
24 |
25 | - **Q版表情角色**:底部配置可爱的emoji表情或形象,增加亲和力
26 | - **表情丰富多样**:使用惊讶、思考、无奈等多种表情,与文本内容情感呼应
27 | - **场景化呈现**:如电脑前工作的人物、阅读书本的角色等场景化表达
28 | - **实物图融合**:如猫咪真实照片与卡通风格的结合
29 | - **点缀型装饰**:适量使用小装饰元素,如笔记本边缘的圆点标记
30 | - **形象位置统一**:视觉元素多位于卡片底部,形成稳定的视觉期待
31 | - **拟人化处理**:将抽象概念通过卡通形象拟人化,增强理解和记忆
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-奢华自然意境风.md:
--------------------------------------------------------------------------------
1 | ## 奢华自然意境风
2 |
3 | ### 设计风格
4 |
5 | - **高级沉稳色调**:暗调景观背景配以细腻光影,营造高端内敛氛围
6 | - **意境式呈现**:不仅展示实景,更表达一种与自然共融的精神状态
7 | - **奢华隐喻元素**:通过构图和文字暗示高端生活方式与品质追求
8 | - **空间层次丰富**:通过前景、中景、远景的搭配创造空间深度感
9 | - **东西方美学融合**:中式意境与西方现代摄影美学的和谐结合
10 | - **沉浸式体验设计**:画面设计引导观者产生身临其境的感受
11 |
12 | ### 文字排版风格
13 |
14 | - **悬浮式标题定位**:文字悬浮于景观之上,形成虚实对比
15 | - **中西文混合排版**:英文与中文标题组合使用,增强国际化气质
16 | - **层级分明的字阶**:主标题、副标题和说明文字尺寸差异明显
17 | - **优雅字体选择**:英文多用细腻的衬线体,中文选用简约现代字体
18 | - **巧妙的文字拆分**:文字的艺术性拆解处理
19 | - **留白与文字平衡**:大面积留白中点缀核心文字,强化重点信息
20 | - **边缘式辅助信息**:次要文字信息常放置于画面边缘,不干扰主视觉
21 |
22 | ### 视觉元素风格
23 |
24 | - **摄影级光影处理**:专业摄影级别的光线捕捉,展现自然光影魅力
25 | - **景深虚化技巧**:背景适度虚化,突出主体,增强画面层次感
26 | - **半透明叠加处理**:文字与背景间常有微妙的半透明效果
27 | - **隐性品牌符号**:品牌元素融入自然场景,不刻意张扬
28 | - **导航指示符号**:左右导航箭头简洁统一,融入整体设计
29 | - **水墨意境渲染**:部分元素带有东方水墨画的意境处理
30 | - **大气构图法则**:遵循三分法或黄金分割构图,画面大气平衡
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-小红书封面图.md:
--------------------------------------------------------------------------------
1 | 你是一位优秀的网页和营销视觉设计师,具有丰富的UI/UX设计经验,曾为众多知名品牌打造过引人注目的营销视觉,擅长将现代设计趋势与实用营销策略完美融合。现在需要为我创建一张专业级小红书封面。请使用HTML、CSS和JavaScript代码实现以下要求:
2 |
3 | ## 基本要求
4 |
5 | **尺寸与基础结构**
6 | - 比例严格为3:4(宽:高)
7 | - 设计一个边框为0的div作为画布,确保生成图片无边界
8 | - 最外面的卡片需要为直角
9 | - 将我提供的文案提炼为30-40字以内的中文精华内容
10 | - 文字必须成为视觉主体,占据页面至少70%的空间
11 | - 运用3-4种不同字号创造层次感,关键词使用最大字号
12 | - 主标题字号需要比副标题和介绍大三倍以上
13 | - 主标题提取2-3个关键词,使用特殊处理(如描边、高亮、不同颜色)
14 | **技术实现**
15 | - 使用现代CSS技术(如flex/grid布局、变量、渐变)
16 | - 确保代码简洁高效,无冗余元素
17 | - 添加一个不影响设计的保存按钮
18 | - 使用html2canvas实现一键保存为图片功能
19 | - 保存的图片应只包含封面设计,不含界面元素
20 | - 使用Google Fonts或其他CDN加载适合的现代字体
21 | - 可引用在线图标资源(如Font Awesome)
22 | **专业排版技巧**
23 | - 运用设计师常用的"反白空间"技巧创造焦点
24 | - 文字与装饰元素间保持和谐的比例关系
25 | - 确保视觉流向清晰,引导读者目光移动
26 | - 使用微妙的阴影或光效增加层次感
27 | ## 风格要求:
28 | ## 用户输入内容
29 | - 封面文案:[Andrej Karpathy 分享了他是如何只用一个文件做笔记的 非项目的日常笔记他只用一个苹果备忘录文件,这样非常方便在单个文件搜索内容 有任何想法或待办事项出现时,都会简单地以纯文本形式将它添加到笔记的顶部 只使用使用"watch:"(观看)、"listen:"(聆听)或"read:"(阅读)等标签 回顾的时候会不时向下滚动浏览笔记。如果发现任何值得持续关注的内容,会通过简单复制粘贴将其"救回"顶部。 值得记录的问题或者内容确实没有多少,这样很简单,项目类型的记录和文档他还是使用 Obsidian]
30 | - 账号名称:[那个曾经的少年回来了]
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-数字极简票券风.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/ai/2025-03-29-数字极简票券风.md
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-新构成主义教学风.md:
--------------------------------------------------------------------------------
1 | ## 新构成主义教学风
2 |
3 | ### 设计风格
4 |
5 | - **黑红白三色系统**:以黑白强对比为基调,点缀醒目红色形成视觉冲击力
6 | - **网格化精准排版**:严谨的网格系统控制整体构图,传达专业设计感
7 | - **学术实验美学**:融合学术研究与实验性设计的双重特质
8 | - **日式现代主义**:汲取日本设计美学,注重留白与紧凑并存的张力
9 | - **教学图解风格**:设计元素同时承载教育功能,如轴线系统的可视化呈现
10 | - **多层次信息构建**:通过色块、线条和排版创造清晰的视觉层次
11 | - **设计史反思性**:将历史元素与当代设计语言结合,形成对话关系
12 |
13 | ### 文字排版风格
14 |
15 | - **中英双语对照**:专业设计术语同时以中英文呈现,增强学术性
16 | - **极端对比字阶**:超大号标题与小号解释文字形成强烈视觉节奏
17 | - **多向文字排布**:结合横排、竖排和径向排列的文字方向实验
18 | - **标点符号设计化**:将问号、括号等符号放大或突出作为视觉元素
19 | - **注释系统完备**:学术化的引用、说明和注解系统,增强专业可信度
20 | - **数字图形化处理**:"100"等数字被设计为具有视觉冲击力的图形元素
21 | - **专业术语突显**:关键设计概念通过排版手段强调,如"一根轴"、"构图"等
22 |
23 | ### 视觉元素风格
24 |
25 | - **红线贯穿引导**:红色线条作为视觉引导和强调,贯穿整体设计
26 | - **几何形符号系统**:三角形、圆点等几何符号作为辅助设计语言
27 | - **教学指示标记**:箭头、下划线等元素具有明确的指向性和教育性
28 | - **区块分明信息区**:内容被清晰划分为不同信息区块,层次分明
29 | - **历史与现代并置**:传统元素与现代设计手法并置,形成时间跨度的视觉对话
30 | - **签名式认证标记**:作者标识、成为设计的权威来源认证
31 | - **微妙纹理变化**:背景中若隐若现的纹理增添设计深度,避免平面化
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-新潮工业反叛风.md:
--------------------------------------------------------------------------------
1 | ## 新潮工业反叛风
2 |
3 | ### 设计风格
4 |
5 | - **黑底强对比美学**:纯黑背景配以白色和荧光黄色元素,形成极强视觉冲击力
6 | - **地下文化气质**:类似独立音乐海报或前卫艺术展的反主流美学
7 | - **工业印刷风格**:模拟工业标识和手册的粗犷实用主义
8 | - **后现代解构主义**:打破传统设计规则,强调不规则性与碎片化
9 | - **都市青年反叛感**:通过设计表达对传统职场文化的质疑和调侃
10 | - **数字朋克气息**:融合数字时代的视觉元素与朋克文化的反抗精神
11 | - **实验性排版探索**:把排版本身作为设计表达的主要手段
12 |
13 | ### 文字排版风格
14 |
15 | - **巨型中文标题**:超大号汉字形成强烈的视觉重心
16 | - **轮廓线英文**:英文采用线条勾勒的空心字体,增强现代感
17 | - **多向阅读结构**:文字横向、纵向、分散排列,打破常规阅读习惯
18 | - **拆分重组文本**:将词语拆解并重新组合排版,如"打|工|摸|鱼|指|南"
19 | - **重复性文本背景**:将口号反复呈现作为背景填充
20 | - **极端字号对比**:从超大到极小的文字尺寸变化,创造丰富层次
21 | - **悬浮式文字布局**:各文本块看似随意又有序地悬浮在画面中
22 |
23 | ### 视觉元素风格
24 |
25 | - **线条鱼图形符号**:简笔画风格的鱼作为核心视觉标识和概念象征
26 | - **星号装饰点缀**:使用"*"符号作为点缀元素,增添活力
27 | - **几何框架结构**:L形、方块、椭圆等简单几何形状构建画面架构
28 | - **日期数字化处理**:"07.05-08.20"等数字信息以现代技术感的方式呈现
29 | - **标语口号突显**:"人生是旷野,家里没矿就不敢野"作为文化态度象征
30 | - **荧光高亮区域**:使用荧光黄突出关键内容,如"打工人"标识
31 | - **重复元素韵律**:通过元素重复创造视觉节奏和连续性
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-极简格栅主义封面风格.md:
--------------------------------------------------------------------------------
1 | ## 极简格栅主义封面风格
2 |
3 | ### 设计风格
4 |
5 | - **黑白极简风格**:以纯黑背景和纯白内容区形成鲜明对比
6 | - **强烈的几何感**:使用简洁的线条、方框和圆形等基础几何元素
7 | - **网格系统布局**:遵循严格的网格排版规则,结构清晰有序
8 | - **留白有度**:大量留白创造呼吸感,同时保持视觉重心
9 | - **摄影与排版结合**:真实场景照片与极简排版形成互补
10 | - **工业风格装饰**:细线箭头、指示线条等元素增添设计感
11 | - **微妙的色彩点缀**:小面积绿色等强调色打破黑白单调
12 |
13 | ### 文字排版风格
14 |
15 | - **大胆字号对比**:核心标题极大化处理,形成主视觉
16 | - **几何式分割标题**:将主标题分解成独立区块,增强辨识度
17 | - **纵横组合排版**:文字既有横排也有竖排,创造韵律感
18 | - **字体粗细对比强烈**:主标题采用超黑体,副文本则较为轻盈
19 | - **多层级信息排列**:活动名称、日期、宣传语清晰分级
20 | - **严格的文字对齐**:所有文字元素依循严格的网格对齐原则
21 | - **中英文混排**:英文作为装饰性元素增添国际设计感
22 |
23 | ### 视觉元素风格
24 |
25 | - **裁切的摄影图像**:图片经过精心裁切,凸显主题
26 | - **指示性线条**:箭头、曲线和直线作为引导性视觉元素
27 | - **框架式强调**:使用方框、底色块等元素强调关键信息
28 | - **简洁图形符号**:最小化的视觉符号传达核心信息
29 | - **构图对称与不对称并存**:整体结构有序但细节处理不拘一格
30 | - **空间层次感**:通过元素大小、位置创造前后层次关系
31 | - **数字图形化处理**:日期数字被赋予视觉设计感
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-柔和科技卡片风.md:
--------------------------------------------------------------------------------
1 |
2 | ## 柔和科技卡片风
3 |
4 | ### 设计风格
5 |
6 | - **圆角卡片布局**:使用大圆角白色或彩色卡片作为信息容器,创造友好亲和感
7 | - **轻柔色彩系统**:主要采用淡紫、浅黄、粉色、米色等柔和色调,避免强烈视觉刺激
8 | - **极简留白设计**:大量留白空间增强可读性,减少视觉疲劳
9 | - **阴影微立体**:subtle阴影效果赋予界面轻微的立体感,不过分强调
10 | - **功能美学主义**:设计服务于功能,没有多余装饰元素
11 | - **网格化布局**:基于明确的网格系统排列卡片,保持整体秩序感
12 | - **渐变色点缀**:部分界面使用柔和渐变作为背景,如米色到蓝色的过渡,增加现代感
13 |
14 | ### 文字排版风格
15 |
16 | - **数据突显处理**:关键数字信息使用超大字号和加粗处理,如"12,002"、"20x"
17 | - **层级分明排版**:标题、说明文字、数据、注释等使用明确的字号层级区分
18 | - **简约无衬线字体**:全部采用现代简洁的无衬线字体,提升可读性
19 | - **文字对齐规整**:在卡片内保持统一的左对齐或居中对齐方式
20 | - **重点色彩标识**:使用蓝色等高对比度颜色标记重要术语,如"tweets"和"threads"
21 | - **空间呼吸感**:文字块之间保持充足间距,创造"呼吸"空间
22 | - **品牌名称特殊处理**:产品名称如"alohi"、"deel."采用特殊字体或风格,强化品牌识别
23 |
24 | ### 视觉元素风格
25 |
26 | - **微妙图标系统**:使用简约线性或填充图标,大小适中不喧宾夺主
27 | - **进度可视化**:使用环形或条状图表直观展示进度,如年度完成百分比
28 | - **色彩编码信息**:不同卡片使用不同色彩,便于快速区分功能模块
29 | - **品牌标识整合**:将产品logo自然融入界面,如"alohi"的圆形标识
30 | - **人物头像元素**:适当使用圆形头像增加人性化特质,如客户推荐卡片
31 | - **几何形状装饰**:使用简单几何形状作为背景装饰,如半透明圆形
32 | - **组件一致性**:按钮、标签、选项卡等元素保持统一风格,提升系统感
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-流动科技蓝风格.md:
--------------------------------------------------------------------------------
1 | ## 流动科技蓝风格
2 |
3 | ### 设计风格
4 |
5 | - 现代简约科技风,以蓝色系为主体色调
6 | - 大量使用蓝白渐变,营造轻盈通透感
7 | - 背景多采用极简白底或浅色调
8 | - 运用流线型曲线创造动态视觉效果
9 | - 圆角矩形作为基础框架,增加友好感
10 | - 整体布局干净有序,空间感强
11 | - 光影效果柔和,营造科技感与未来感
12 |
13 | ### 文字排版风格
14 |
15 | - 标题简洁有力,通常使用黑体或无衬线字体
16 | - 显著的标题层级对比,主副标题大小分明
17 | - 中英文混排,增加国际化视觉效果
18 | - 关键信息放大处理,辅助文字精简
19 | - 日期、标签等信息排版整齐规范
20 | - 文字与背景形成适当对比,确保清晰可读
21 | - 数字与文本搭配得当,注重整体平衡
22 |
23 | ### 视觉元素风格
24 |
25 | - 流动曲线是主要装饰元素,表现科技流动感
26 | - 半透明蓝色波纹或螺旋形状贯穿多个设计
27 | - 几何抽象形状作为点缀(圆环、三角形等)
28 | - 轻量级图标和按钮设计,简洁明了
29 | - 折纸元素(如纸飞机)象征传递与连接
30 | - 光效处理柔和,形成层次感
31 | - 整体视觉元素与科技、数据、信息等主题高度契合
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-现代商务资讯卡片风.md:
--------------------------------------------------------------------------------
1 | ## 现代商务资讯卡片风
2 |
3 | ### 设计风格
4 |
5 | - **色彩情绪编码**:使用深绿与深红色调分别象征金融稳健与企业活力
6 | - **主题色块构成**:整体采用大面积单一色调作为背景,营造专业稳重氛围
7 | - **卡片式设计**:内容以圆角卡片形式呈现,现代简约且边界感明确
8 | - **商务应用美学**:符合金融科技类应用的视觉设计规范与审美
9 | - **微妙渐变处理**:背景色采用细腻渐变效果,增强层次感
10 | - **网格底纹肌理**:融入轻微网格线与点阵纹理,提升科技感与专业度
11 | - **功能导向设计**:布局与元素安排以提升信息获取效率为首要目标
12 |
13 | ### 文字排版风格
14 |
15 | - **三级信息层级**:通过明确的字号和粗细区分头条标签、主标题和辅助信息
16 | - **大标题强调**:主要新闻标题占据视觉中心,字号最大且加粗
17 | - **左对齐规整排版**:所有文字元素保持左对齐,结构严谨有序
18 | - **无衬线字体选用**:采用现代商务风格的无衬线字体,提高可读性和专业感
19 | - **标题分行处理**:长标题采用多行排版,每行字数适中,便于快速阅读
20 | - **日期位置固定**:日期信息位置统一,作为时效性标识
21 | - **留白节奏控制**:文字块之间保持适当留白,创造舒适阅读节奏
22 |
23 | ### 视觉元素风格
24 |
25 | - **指向性图标**:右上角箭头图标暗示可点击进入详情的交互性质
26 | - **点阵背景纹理**:背景中的微妙点阵增加设计深度,避免平面单调
27 | - **进度指示条**:底部的分段线条作为浏览进度或内容分区指示
28 | - **主题色彩区隔**:不同新闻主题采用不同色调区分(金融绿色/科技红色)
29 | - **高对比度文字**:浅色文字在深色背景上形成强烈对比,确保可读性
30 | - **内容统一格式**:"Today's News"标签在相同位置出现,建立品牌一致性
31 | - **简洁无干扰界面**:排除多余装饰元素,聚焦于核心信息传递
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-软萌知识卡片风.md:
--------------------------------------------------------------------------------
1 | # 软萌知识卡片风
2 |
3 | ## 设计风格
4 |
5 | - **柔和色彩基调**:以粉色、米黄、淡紫等温和色调为主,营造轻松友好氛围
6 | - **圆角卡片结构**:所有内容采用大圆角矩形或椭圆形容器,没有尖锐边角
7 | - **简约留白处理**:适当留白增强可读性,避免视觉拥挤感
8 | - **渐变色背景**:部分卡片使用柔和渐变背景,增加层次感和温暖感
9 | - **情感化设计**:整体风格偏向亲和、轻松,不过分严肃正式
10 | - **统一视觉语言**:各卡片尽管内容不同,但维持一致的设计语言
11 | - **轻量化边框**:红色封面使用笔记本线条等轻量级边框元素增加趣味性
12 |
13 | ## 文字排版风格
14 |
15 | - **大字号标题**:标题文字加粗加大,吸引第一眼注意
16 | - **紧凑段落布局**:正文内容分段清晰,段落间距适中
17 | - **感叹号点缀**:频繁使用感叹号增强情感表达和亲近感
18 | - **表情符号融入**:在文字中加入"」"等特殊符号增加表现力
19 | - **重点句加粗**:关键信息或总结性内容加粗处理
20 | - **自然语言表达**:采用口语化、对话式的表达方式,降低阅读门槛
21 | - **多层级排版**:标题、副标题、正文、强调语等形成清晰的阅读层级
22 |
23 | ## 视觉元素风格
24 |
25 | - **Q版表情角色**:底部配置可爱的emoji表情或形象,增加亲和力
26 | - **表情丰富多样**:使用惊讶、思考、无奈等多种表情,与文本内容情感呼应
27 | - **场景化呈现**:如电脑前工作的人物、阅读书本的角色等场景化表达
28 | - **实物图融合**:如猫咪真实照片与卡通风格的结合
29 | - **点缀型装饰**:适量使用小装饰元素,如笔记本边缘的圆点标记
30 | - **形象位置统一**:视觉元素多位于卡片底部,形成稳定的视觉期待
31 | - **拟人化处理**:将抽象概念通过卡通形象拟人化,增强理解和记忆
--------------------------------------------------------------------------------
/docs/ai/2025-03-29-阅读总结.md:
--------------------------------------------------------------------------------
1 | Role:我希望你扮演一位深度阅读教练。我刚读完一篇文章,需要你帮我加深理解和记忆。
2 |
3 | Task:
4 | 1. 生成文章的概念图谱,包括:
5 | - 核心论点和关键概念
6 | - 概念之间的层级关系和联系
7 | - 以视觉化方式呈现(如思维导图格式)
8 |
9 | 2. 提出3个核心问题让我回答,问题要求:
10 | - 聚焦文章的主要论点和关键概念
11 | - 促使我深入思考文章的核心信息
12 | - 引导我将文章内容与实际应用联系起来
13 | - 包含难度递增的问题,从基础理解到批判性思考
14 |
15 | 3. 设计2个应用场景练习:
16 | - 基于文章内容,创建实际应用或问题解决的场景
17 | - 要求我运用文章的核心概念提出解决方案
18 |
19 | 4. 基于文章内容,设计5道选择题,每题4个选项:
20 | - 覆盖文章的不同方面
21 | - 包含一些需要推理或综合理解的问题
22 | - 选项设计要有辨别度,避免过于明显的错误选项
23 |
24 | 5. 提供元认知反思问题:
25 | - 这篇文章如何改变了我的已有认知?
26 | - 我对文章内容还有哪些疑问或不确定之处?
27 | - 基于这篇文章,我可以在哪些方向继续探索?
28 | 6. 直接输出,不要需要前后置引导语,如果是进行提问的,也顺便把答案给我一下。
29 |
30 | Format:
31 |
32 | # 核心思考
33 | 问题1:**[问题1]**
34 |
35 | #关键词1 #关键词2 #关键词3
36 |
37 | > [原文引用]
38 |
39 | 问题2:**[问题2]**
40 |
41 | #关键词1 #关键词2 #关键词3
42 |
43 | > [原文引用]
44 |
45 | 问题3:**[问题3]**
46 |
47 | #关键词1 #关键词2 #关键词3
48 |
49 | > [原文引用]
50 |
51 | # 应用与迁移
52 | **场景1:[应用场景描述]**
53 |
54 | 任务:[详细任务要求]
55 |
56 | **场景2:[应用场景描述]**
57 |
58 | 任务:[详细任务要求]
59 |
60 |
61 | # 元认知反思
62 | 1. **认知转变**:[引导性问题]
63 | 2. **未解疑问**:[引导性问题]
64 | 3. **探索方向**:[引导性问题]
65 |
66 |
67 | # 测试回顾
68 | **[选择题1]**
69 | A. [选项内容]
70 | B. [选项内容]
71 | C. [选项内容]
72 | D. [选项内容]
73 |
74 | [其余选择题]
75 |
76 | ## 答案
77 | [答案与解析]
78 |
79 | # 文章概念图谱
80 | [概念图谱内容]
81 |
82 | 文章内容如下:
83 | 这是一篇公众号的文章,文章链接为https://mp.weixin.qq.com/s/k6YnKuad2sxyXgFaXEvJqw。请帮我将原文内容读取出来,不需要进行处理加工,直接返回原文即可。
--------------------------------------------------------------------------------
/docs/ai/2025-03-29.md:
--------------------------------------------------------------------------------
1 | 你是一名专业的微信公众号文章设计师和内容排版专家,精通微信公众号编辑器的所有功能和限制。请根据我提供的内容,创建一个既美观又符合微信公众号技术规范的文章页面。
2 |
3 | 【技术规范与限制】
4 |
5 | * 微信公众号仅支持内联样式,不支持外部CSS文件引用(Font Awesome除外)
6 |
7 | * 所有样式必须通过style属性直接添加到HTML元素上
8 |
9 | * 微信公众号会自动移除某些HTML标签和属性,如script、onclick等
10 |
11 | * 图片宽度应设为100%以适配不同手机屏幕
12 |
13 | * 支持的字体有限,主要依赖系统默认字体
14 |
15 | * 支持的CSS属性有限,不支持复杂的CSS3特性
16 |
17 | 【设计元素】
18 |
19 | * 段落间距:使用margin-bottom:1em控制段落间距
20 |
21 | * 标题样式:使用color、font-weight、font-size、text-align等属性设置样式
22 |
23 | * 文本对齐:使用text-align控制对齐方式
24 |
25 | * 分隔线:使用hr标签配合style属性创建自定义分隔线,高度限制在8-10px之间,避免过厚分隔线
26 |
27 | * 引用框:使用border-left和padding创建引用效果
28 |
29 | * 列表样式:使用ul和ol标签配合自定义样式属性
30 |
31 | * 表格样式:使用简单的border和background设置
32 |
33 | * 强调框:使用background-color和border-radius创建醒目的内容框
34 |
35 | 【排版最佳实践】
36 |
37 | * 标题层级清晰:主标题(22px)、副标题(20px)、小标题(18px)
38 |
39 | * 正文字号:16px,行高1.75倍左右
40 |
41 | * 强调色谨慎使用:每篇文章最多使用1-2种强调色
42 |
43 | * 留白合理:段落间距、标题前后间距保持一致
44 |
45 | * 内容分块:每3-4个段落设置一个小标题,便于阅读
46 |
47 | * 图文混排:图片上下增加适当间距(margin),避免拥挤感
48 |
49 | * 首屏设计:确保首屏内容吸引人,不超过一屏的内容
50 |
51 | 【常用颜色代码】
52 |
53 | * 主标题:#333333
54 |
55 | * 副标题:#444444
56 |
57 | * 正文:#182b50
58 |
59 | * 辅助文字:#888888
60 |
61 | * 分隔线:#eeeeee
62 |
63 | * 引用边框:#efefef
64 |
65 | * 强调色推荐:#5c8dff(蓝)、#07c160(绿)、#fa5151(红)、#ff9d21(橙)
66 |
67 | 请直接输出完整的、可直接复制到微信公众号编辑器的HTML代码,所有样式均使用内联方式。不要包含任何解释或说明,只提供最终代码。代码要考虑微信iOS和Android客户端的兼容性,避免使用不支持的CSS特性。
68 |
69 | 以下是需要排版的文章内容:
--------------------------------------------------------------------------------
/docs/ai/2025-04-01-文章改写.md:
--------------------------------------------------------------------------------
1 | https://zhuanlan.zhihu.com/p/676297213
--------------------------------------------------------------------------------
/docs/ai/index.md:
--------------------------------------------------------------------------------
1 | ## 微信公众号热门文章
2 | - https://rewen.org/hit
3 |
4 |
5 | ## 微信朱雀AI查重
6 | - https://matrix.tencent.com/ai-detect/
--------------------------------------------------------------------------------
/docs/article/code/2022-05-10-vscode.md:
--------------------------------------------------------------------------------
1 |
2 | --https://juejin.cn/post/6997186741866070023#heading-19
3 | ##vscode 常用插件
4 | - 0、韭菜盒子————偶尔看看股票基金,不用浪费时间捯饬来捯饬去
5 | - 1、Chinese (Simplified) Language Pack for Visual Studio Code
6 | - 2、html 自动闭合标签 ———— Auto Close Tag
7 | - 2、自动重命名成对的html ———— Auto Rename Tag
8 | - 3、方便查看 git 日志,git 重度使用者必备———— GitLens
9 | - 4、查看文件变更历史,或者文件行变更历史 ————Git History
10 | - 4、代码高亮 ————Vetur
11 | - 5、主题 ————Shades of Purple、、Cyberpunk UMBRA
12 | - 6、自动格式化代码 ———— prettier
13 | - 7、左侧文件图标主题 ————material icon theme
14 | - 8、方便记录 TODO 记录(如 bug、注释、变更、待修复等问题、重点备注等)————TODO
15 | - 9、Volar Vue3 插件
16 | - 10、npm Intellisense npm模块导入智能提示
17 | - 11、Path Intellisense 路径提示
18 | - 12、Import Cost 查看import依赖的大小
19 | - 13、Html Snippets此插件能快速的输出html代码, 效率就是懒出来的,你们说对吧。
20 | - 14、Quokka.js 直接显示变量结果
21 | - 15、Tabnine AI 代码完成插件
22 | - 16、Markdown Preview Enhanced markdown编辑和预览
23 | - 17、JSON to TS json转为TS申明
24 | - 18、拼写检查 Code Spell Checker 拼写检查
25 | - 19、Bracket Pair Colorizer 2 括号对齐利器
26 | - 20、Turbo Console Log 快速日志
27 |
28 |
29 | 快捷键
30 | 先在一个文件中用光标选中要修改的字符串,然后CTRL + SHIFT +L 就可以批量修改了
--------------------------------------------------------------------------------
/docs/article/code/2022-05-24-react.md:
--------------------------------------------------------------------------------
1 | - react(https://react.docschina.org/)
2 |
3 | - umi--路由配置(https://umijs.org/)
4 | - dva--数据流方案(https://dvajs.com/guide/)
5 |
6 | - Umi和Dva都是基于React的框架,Umi主要以路由为主,Dva主要管理数据流。
7 |
8 | - Antd pro(https://pro.ant.design/docs/getting-started-cn)集成了umi、dva、antd的完整前端脚手架
--------------------------------------------------------------------------------
/docs/article/code/2022-05-25-build-optimize.md:
--------------------------------------------------------------------------------
1 | - 1、 查看打包后每个loader和plugin消耗时间 speed-measure-webpack-plugin
2 | ```javascript
3 | const SpeedMeasurePlugin = require("speed-measure-webpack-plugin");
4 | chainWebpack: config => {
5 | config
6 | .plugin('speed-measure-webpack-plugin')
7 | .use(SpeedMeasurePlugin)
8 | .end()
9 | },
10 | ```
11 | - 2、 查看插件的大小体积 webpack-bundle-analyzer
12 | ```javascript
13 | npm install --save-dev webpack-bundle-analyzer
14 | ```
15 | - 3、"report": "vue-cli-service build --report",
16 | ```javascript
17 | 在build目录下有一个report.html文件查看包的大小
18 | ```
19 | - 4、压缩js代码 terser-webpack-plugin
20 | ```javascript
21 | 1、移除空行、空格
22 | 2、变量重设 变短
23 | 3、移除console等
24 | ```
25 | - 5、 tree sharking import只引入有效的代码
26 |
27 | - 6、cssnano css打包
28 |
29 | - 7、使用loader可以设置 缩小查找文件范围,比如不包含 node-modules文件夹
30 |
31 |
32 |
--------------------------------------------------------------------------------
/docs/article/code/2022-05-26-nodejs.md:
--------------------------------------------------------------------------------
1 | - 1、node-schedule 定时执行任务
2 | - 2、koa https://juejin.cn/post/7016589175335944228
3 | - 3、koa-router 路由
4 | - 4、redis ioredis
5 | - 5、mongoose mongodb数据库
6 | - 6、https://juejin.cn/post/6844903685164646413
--------------------------------------------------------------------------------
/docs/article/code/2022-05-28-mysql.md:
--------------------------------------------------------------------------------
1 |
2 | ### linux centos mysql 安装和使用
3 | - https://cloud.tencent.com/developer/article/1393323
4 | - https://www.cnblogs.com/yuanchao-blog/p/10679156.html
5 | - https://cloud.tencent.com/developer/article/1145484?from=14588
6 |
7 | ### window java idea搭建
8 | - 30天后评估 https://www.exception.site/essay/idea-reset-eval
9 | - java demo项目 https://www.exception.site/article/28
10 | - 配置java环境变量 https://www.cnblogs.com/nojacky/p/9497724.html
11 | ### maven 包管理器
12 | - 下载地址 http://maven.apache.org/download.cgi
13 | - https://www.runoob.com/maven/maven-setup.html 安装配置
14 | - 配置好maven可能需要重启电脑才能再idea中使用mvn -v
15 | ### nginx 部署springboot java项目
16 | - 部署 https://blog.csdn.net/weixin_31992389/article/details/114082476
17 | - linux下下载java和配置环境变量 https://blog.csdn.net/sizaif/article/details/106106955
18 | - 开启 nohup java -jar demo-0.0.1.jar > log.log 2>&1 &
19 | - chmod +x /usr/share/nginx/html/java/startup.sh
20 | - chmod +x /usr/local/project/startup.sh
21 | - su - root -c '/usr/share/nginx/html/java/java.sh'
22 | - 设置 java开启运行启动命令 https://www.jianshu.com/p/3f62252c9042
23 | - https://www.cnblogs.com/miles322/p/13755212.html
24 |
25 | - nohup 可执行程序的配置使用 https://blog.csdn.net/qq_40241957/article/details/98584207
26 | - log4j记录日志使用 https://blog.csdn.net/weixin_35696071/article/details/114343607
27 |
28 | ### mysql 常用基本操作
29 | - mysql中 information_schema数据库的作用 https://blog.csdn.net/xianjie0318/article/details/80857568
30 | - TABLES 关于数据库中表的信息 select * from `TABLES` where TABLE_SCHEMA='aehyok'
31 | - COLUMNS 关于数据库中的表的字段信息 select * from `COLUMNS` where TABLE_NAME='user'
32 |
33 |
34 | ## 1、
--------------------------------------------------------------------------------
/docs/article/code/2022-05-29-leaflet.md:
--------------------------------------------------------------------------------
1 | # leaflet使用记录
2 |
3 | ### 1、安装
4 |
5 |
6 | ### 地图底图的加载地址
7 | - http://www.thingjs.com/guide/cn/tutorial_city_builder/Data_description/Geographical_map.html
8 |
9 | - https://blog.csdn.net/weixin_39887531/article/details/113566719
10 |
11 | - https://lantian.pub/article/modify-website/leaflet-combine-google-cn-satellite-autonavi-map.lantian/
12 |
13 | - https://www.mapbox.cn/tutorials/gljs/#%E5%9B%BE%E5%B1%82%EF%BC%88layers%EF%BC%89
14 |
15 | - https://www.giserdqy.com/secdev/leaflet/26297/ 围栏算法
16 |
17 | - https://www.jianshu.com/p/cf81e2a014bf
18 |
19 | - http://0x0803.top/2018/05/27/gis-leaflet-tutorials-map-layer/
20 |
21 | - https://github.com/8600/leaflet-map
22 |
23 |
24 | - 1、leaflet pm create和edit
25 | - https://stackoverflow.com/questions/53133543/leaflet-pm-edit-mode-get-new-coordinates-within-shape
26 | - https://vue2-leaflet.netlify.app/components/LWMSTileLayer.html#demo
27 | - https://leafletjs.com/reference-1.7.1.html#tilelayer-option
28 |
29 |
30 | - 2、leaflet maxZoom设置
31 | - 如果设置了map的maxZoom为20,那么其他图层设置的再大,比如到了22也不会有效果
32 | - 如果将map的maxZoom值设置未最大,那么其他图层到达某个值之后可能会展示空白
33 | - 到达了村,如果这个村已经有了无人机的正射图像,以及有了村委的打点坐标,那么可以单独只显示一个村的地图边界,同样的镇也是可以处理的
34 | - https://blog.csdn.net/QiZi_Zpl/article/details/109843528
35 | - 3、 中国各行政区域JSON围栏数据
36 | - https://github.com/Vonng/adcode
37 | - 高德围栏 https://lbs.amap.com/api/webservice/guide/api/geofence_service/
38 |
39 |
--------------------------------------------------------------------------------
/docs/article/code/2022-06-02-echarts.md:
--------------------------------------------------------------------------------
1 | - options配置属性
2 | - https://wenku.baidu.com/view/5a3adab1de88d0d233d4b14e852458fb770b38a6.html
3 | - https://www.cnblogs.com/nthforsth/p/15253115.html#%E4%BA%8Clegend--%E5%9B%BE%E4%BE%8B%E7%BB%84%E4%BB%B6
4 | - 1、title--标题
5 | - 2、legend--图例组件
6 | - 3、tooltip--提示框组件
7 | - 4、grid--可用于调整图例在整个容器中的占位
8 | - 5、xAxis--x 轴
9 | - 6、yAxis-y 轴
10 | - 7、series-line--折线/面积图
11 | - 8、series-bar--柱状图
12 | - 9、series-pie--饼图
13 | - 10、 color: 图颜色
14 | - 11、background-color: echarts全图默认背景
15 | - https://www.cnblogs.com/nthforsth/p/15256258.htm
--------------------------------------------------------------------------------
/docs/article/code/2022-06-03-ast.md:
--------------------------------------------------------------------------------
1 | https://juejin.cn/post/6844903798347939853#comment
2 |
3 | https://mp.weixin.qq.com/s/THBP8sLQf_kTBIPTxAkodQ
4 |
5 |
6 |
7 | 代码混淆
8 | https://juejin.cn/post/6844903861958737927#heading-3
9 |
10 |
11 | https://segmentfault.com/a/1190000016231512
12 |
13 |
14 |
15 | - 一个小的demo
16 | https://juejin.cn/post/7025887569124524040
17 |
18 |
19 | https://juejin.cn/post/6844904019505184776#heading-11
20 |
21 | ## AST可以用来干什么
22 | - VSCode中 eslint的代码风格检查
23 | - TypeScript转换为JavaScript代码
24 |
--------------------------------------------------------------------------------
/docs/article/code/2022-06-04-pnpm.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | vue3官方版本 vuejs/core都采用pnpm了,你还犹豫什么呢
4 | ================================
5 |
6 | 大部分时间基本上都是使用yarn,有些时候使用了cnpm,然后较早之前也使用过npm。 pnpm 本质上就是一个包管理器,这一点跟 npm/yarn 没有区别,但它作为杀手锏的两个优势[https://github.com/pnpm/pnpm] https://github.com/pnpm/pnpm已经将其充分的展现出来了:
7 | - 包安装速度极快;
8 | - 磁盘空间利用非常高效。
9 | 用yarn或者npm可能要十几分钟才能安装完成的依赖,pnpm不超过一分钟就结束了,真的是太快了,我都有一点不可思议了。
10 |
11 | - https://cloud.tencent.com/developer/article/1927549
12 | - https://juejin.cn/post/6932046455733485575
13 | - https://mp.weixin.qq.com/s/FWv7HJt8QqoLzzqa6q54qQ
14 | - https://juejin.cn/post/6944877410827370504
15 |
--------------------------------------------------------------------------------
/docs/article/code/2022-06-05-router.md:
--------------------------------------------------------------------------------
1 |
2 | - 1、popstate https://developer.mozilla.org/zh-CN/docs/Web/API/Window/popstate_event
3 | - 2、qiankun vue 主应用和子应用 https://github.com/umijs/qiankun/issues/1750
4 | - 3、https://github.com/leiyangs/qiankun-demo/pull/1/commits/c77fcc85a89b5ad4c6e19df3f60e3c73ce2f281e
5 | - 4、https://www.lodashjs.com/docs/lodash.assign#_assignobject-sources
6 |
--------------------------------------------------------------------------------
/docs/article/code/2022-06-06-code.md:
--------------------------------------------------------------------------------
1 |
2 | - eventemitter3
3 | - 观察模式 发布 订阅 https://www.cnblogs.com/wuyz-harder/p/15597330.html
4 | - 观察者模式和发布订阅模式的区别 https://juejin.cn/post/7055441354054172709
5 | - 观察者模式
6 | - vue3 双向数据绑定
7 |
8 |
9 | - babel 编译相关
10 | - https://juejin.cn/post/6844904035271573511#comment
11 | - @babel/parser 将js代码------>>> AST抽象语法树
12 | - @babel/traverse对AST节点进行递归遍历
13 | - @babel/types 对具体的AST节点进行修改
14 | - @babel/generator AST抽象语法树----->>>生成新的js代码
15 | - htmlparser2 转换
16 | - https://github.com/fb55/htmlparser2
17 | - https://github.com/fb55/htmlparser2/wiki/Parser-options
18 |
19 | - 生成id
20 | - https://juejin.cn/post/7039960318897815565#comment
21 |
22 | - bundle-core-esm.js 生成代码
23 | - vueTemplate() // 默认文
24 |
25 | - codemirror
26 | - react https://juejin.cn/post/6844904086443720717
27 | - vue3 codemirror-editor-vue3
28 | - eval+ new Function
29 | - demo3 + demo4
30 |
31 | ```javascript
32 | eval(`console.log('hello code')`)
33 |
34 | let c = 10
35 | eval(`console.log(`${c}`)
--------------------------------------------------------------------------------
/docs/article/code/2022-08-11-pnpm.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2022-08-11-pnpm.md
--------------------------------------------------------------------------------
/docs/article/code/2022-08-16-commitizen.md:
--------------------------------------------------------------------------------
1 | pnpm i commitizen
2 |
--------------------------------------------------------------------------------
/docs/article/code/2022-08-20-apifox.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2022-08-20-apifox.md
--------------------------------------------------------------------------------
/docs/article/code/2022-08-24-vim.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | - https://juejin.cn/post/6844903721550217229
4 |
5 | - https://juejin.cn/post/6844903665161994248
6 |
7 | - https://juejin.cn/post/7124892604881174541
8 |
9 | ## 前言
10 |
11 | vim就是一款文本编辑器,跟window下的notepad类似,只不过
12 |
13 |
14 | ## 打开某个文件
15 | ```javascript
16 | vim /etc/nginx/nginx.conf
17 | ```
18 |
19 | 如果想让文件显示行号,下面两个命令都可以
20 | ```
21 | :set number
22 | :set nu
23 | ```
24 |
25 | ## 修改vim配置
26 |
27 | 这里先只知道配置文件修改的地方
28 |
29 | ```
30 | vim ~/.viminfo
31 | ```
32 |
33 |
34 |
--------------------------------------------------------------------------------
/docs/article/code/2022-08-25-hub docker.md:
--------------------------------------------------------------------------------
1 |
2 | - https://developer.aliyun.com/mirror/
3 | -
4 | - https://juejin.cn/post/7132447294330241061
5 |
6 | ## 注册一个hub.docker
7 | https://hub.docker.com
8 |
9 |
10 | ## create a repository
11 |
12 | 将其设置为私有属性
13 |
14 |
15 |
16 | ## 在linux进行登录
17 |
18 | docker login
19 | 输入用户名和密码
20 |
21 |
22 |
23 | docker info
--------------------------------------------------------------------------------
/docs/article/code/2022-08-25-wujie.md:
--------------------------------------------------------------------------------
1 | ## 创建项目
2 | 创建一个主应用和两个子应用
3 | ```
4 | pnpm create vite
5 | ```
6 | 通过vite创建一个vue3项目,然后拷贝三份。目录如下所示:
7 |
8 |
9 | 
10 |
11 | 然后分别安装依赖,先修改为三个不同的端口,将三个项目分别能跑起来
12 | ```
13 | pnpm i
14 | ```
15 |
16 | 此时分别到三个项目目录下面,pnpm dev三个项目便可以跑起来了。三个项目分别设置三个端口8800,8810,,8820
17 |
18 | 三个项目的根目录下修改vite.config.ts,主要就是为了添加端口
19 | ```
20 | export default defineConfig({
21 | plugins: [vue()],
22 | server: {
23 | port: 8800
24 | }
25 | })
26 | ```
27 |
28 | ## 主应用 wujie-main
29 |
30 | ```
31 | pnpm i wujie-vue3 -D
32 | ```
--------------------------------------------------------------------------------
/docs/article/code/2022-08-26-vue3原理.md:
--------------------------------------------------------------------------------
1 | # vue3执行原理流程
2 |
3 | ## 1.初始化流程
4 |
5 | 创建app进行初始化根据根节点生成vnode,调用render进行组件patch阶段
6 |
7 | ## 2.组件初始化
8 |
9 | ==在组件进行patch时,根据vnode类型做处理,如果是component类型便做component组件初始化,如果是element类型做element初始化==,下面分两种不同的类型进行讲解初始化过程。
10 |
11 | ### 2.1 `component`组件初始化
12 |
13 | 1.创建组件实例
14 |
15 | 2.初始化`props`、`slot`并调用`setup`函数,将返回值结果添加到组件原型上。
16 |
17 | 3.如果查询到组件实例上没有`render`并且`template`有值,接下来便对`template`进行编译,最后将编译后的函数赋值给组件`render`
18 |
19 | 4.初始化阶段调用`setupRenderEffect`是第一次调用,那么直接调用`render`函数获取子组件,触发`beforeMount`钩子,而后重新进行`patch`,全部`patch`完了之后才会调用`mount`钩子函数
20 |
21 | ### 2.2 `Element`组件初始化
22 |
23 | 1.通过`vnode.type`创建对应真实元素
24 |
25 | 2.对`vnode`类型进行判断如果是文本直接渲染即可;如果是数组进行遍历对每个元素进行`patch`
26 |
27 | 3.将`vnode`的`props`绑定到元素的真实`DOM`上
28 |
29 | 4.触发`beforeMount`钩子
30 |
31 | 5.将创建的元素进行插入
32 |
33 | 6.最后触发`mount`钩子函数
34 |
35 | ## 3.组件更新
36 |
37 | 在组件初始化过程当中,调用`setupRenderEffect`在内部创建组件更新函数,而后使用effect函数将更新函数放到调度函数当中,往后内部对响应式数据进行更新后,都会触发修改函数调用,将每次修改动作放到微任务队列里,待轮到微任务执行的时候,全部执行这样不会导致每次调用update函数带来
38 |
39 | ### 3.1 `component`组件更新
40 |
41 | 1.触发当前组件的执行update后重新执行render函数获取最新vnode
42 |
43 | 2.触发beforeUpdate钩子与onVnodeBeforeUpdate钩子
44 |
45 | 3.将vnode传进patch,照样会进行类型判断(本小节讲解组件更新流程)
46 |
47 | 4.通过检测props判断是否需要更新组件,如果需要重新调用patch(这边是递归patch)
48 |
49 | 5.整个递归patch完成之后执行updated钩子函数
50 |
51 |
52 |
53 | ### 3.2 `Element`组件更新
54 |
55 | 1.触发当前组件的执行update后重新执行render函数获取最新vnode
56 |
57 | 2.触发beforeUpdate钩子与onVnodeBeforeUpdate钩子
58 |
59 | 3.执行patch,进入Element组件更新流程
60 |
61 | 4.对比新旧节点的props,如果不一致则更新dom的props
62 |
63 | 5.对比children,如果新vnode的children与旧vnode的children都是数组类型那么便进行diff算法比对,如果不是进行判断更新即可
64 |
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/docs/article/code/2022-09-01-axios工具函数判断纯对象.md:
--------------------------------------------------------------------------------
1 |
2 | ## 判断是否属于一个纯对象
3 |
4 | ```javascript
5 | const isPlainObject = (val) => {
6 | if (kindOf(val) !== 'object') {
7 | return false;
8 | }
9 |
10 | const prototype = getPrototypeOf(val);
11 | return prototype === null || prototype === Object.prototype;
12 | }
13 | ```
14 |
15 | 先来看一下两个方法,这是在ES6中新增的方法
16 | ```javascript
17 | Object.getPrototypeOf(xx) // 读取传入参数的原型对象
18 | Object.setPrototypeOf(xx) // 写入传入参数的原型对象
19 | ```
20 | 这里如果有想对原型和原型链不太熟悉的,可以看一下我前段时间总结的一片文章 :[https://juejin.cn/post/7126061672032108551](https://juejin.cn/post/7126061672032108551)。
21 |
22 | 继续来看一下代码比对
23 | ```javascript
24 | Object.getPrototypeOf({}) === Object.prototype // true
25 | Object.getPrototypeOf(new Object()) === Object.prototype // true
26 | Object.getPrototypeOf(Object.create(null)) // null
27 | Object.getPrototypeOf(Object.create(null)) // null
28 | ```
29 |
30 | 
31 |
32 |
33 |
34 | ```javascript
35 | Object.getPrototypeOf(123) === Object.prototype // false
36 | // 上面两个说明 空对象的原型 和数值的原型是不同的
37 |
38 | Object.getPrototypeOf(123) === Number.prototype // true
39 | Object.getPrototypeOf(Number.prototype) === Object.prototype // true
40 | // 重新再来看数值的原型,以及数值的原型的原型,这里便形成了原型链,也就是有了继承的关系
41 | ```
42 |
43 | 
44 |
45 |
46 | 从上面的代码和原型关系图可以简单的看出来,通过 `{ }` 、`new Object()` 创建的对象,原型为Object.prototype,而通过Object.create(null)的原型竟然为null,就更加的纯粹
47 | `Object.create(null)` 创建的对象
48 |
--------------------------------------------------------------------------------
/docs/article/code/2022-09-21-history.md:
--------------------------------------------------------------------------------
1 | - window.history.pushState
2 | - history.pushState() 方法向当前浏览器会话的历史堆栈中添加一个状态(state)。
3 | - window.history.replaceState
4 | - 修改当前历史记录实体
5 | - window.history.popstate
6 | - popstate 事件只会在浏览器某些行为下触发,比如点击后退按钮(或者在 JavaScript 中调用 history.back() 方法)。即,在同一文档的两个历史记录条目之间导航会触发该事件。
--------------------------------------------------------------------------------
/docs/article/code/2022-10-09-http缓存.md:
--------------------------------------------------------------------------------
1 | - https://juejin.cn/post/7065895592613904392
2 | - https://juejin.cn/post/6844903734644834318
3 | - https://juejin.cn/post/7050004962155167781
4 |
5 | - 通过ndoejs的fs模块查看文件信息
6 | - https://juejin.cn/post/6955011872298893319
--------------------------------------------------------------------------------
/docs/article/code/2022-10-11-.net6.0.md:
--------------------------------------------------------------------------------
1 | ## IQueryable
2 | - https://www.cnblogs.com/xishuai/p/repository-return-iqueryable-or-ienumerable.html
3 | IQueryable 继承自 IEnumerable,它们俩最大的区别是,IQueryable 是表达式树处理,可以延迟查询,而 IEnumerable 只能查询在本地内存中,Repository 的概念就不多说了,在“伪 DDD”设计中,你可以把它看作是数据访问层。
4 |
5 |
6 | ## AsNoTracking
7 | - https://learn.microsoft.com/zh-cn/dotnet/architecture/modern-web-apps-azure/work-with-data-in-asp-net-core-apps
8 | - AsNoTracking https://learn.microsoft.com/zh-cn/dotnet/api/system.data.entity.dbextensions.asnotracking?view=entity-framework-5.0.0
9 |
10 | EF Core 具有两个重要功能,使其有别于 Dapper ,并且增加其性能开销。 第一个功能是从 LINQ 表达式转换为 SQL。 将缓存这些转换,但即便如此,首次执行它们时仍会产生开销。
11 | 第二个功能是对实体进行更改跟踪(以便生成高效的更新语句)。
12 | 通过使用 AsNoTracking 扩展,可对特定查询关闭此行为。 EF Core 还会生成通常非常高效的 SQL 查询,并且从性能角度上看,任何情况下都能完全接受,但如果需要执行对精确查询的精细化控制,也可使用 EF Core 传入自定义 SQL(或执行存储过程)。
13 |
14 |
15 |
16 | ## 执行原生Sql
17 | - https://www.cnblogs.com/hllive/p/13559793.html
18 | - update delete 等 DbContext.Database.ExecuteSqlRawAsync
19 |
20 | ## 事务异常
21 | - https://mysqlconnector.net/troubleshooting/transaction-usage/
22 |
23 | ## 各种使用范例
24 | - https://www.cjavapy.com/article/680/
25 |
26 | ## Excel 电子表格
27 | - https://github.com/nissl-lab/npoi
28 | - https://epplussoftware.com/zh/
29 | - https://github.com/EPPlusSoftware/EPPlus
30 |
31 | ## 数据库连接池
32 | - https://www.cnblogs.com/xhubobo/p/16163949.html
33 | - https://github.com/dotnetcore/osharp/issues/217
34 |
35 | ## EFCore 读写分离
36 | - https://www.cnblogs.com/coldairarrow/p/12733886.html
37 | ## EFCore分表分库
38 | - https://www.cnblogs.com/xuejiaming/p/15375374.html
39 | - https://www.cnblogs.com/yaopengfei/p/13263597.html
40 |
41 | ## DBContext 各种方式
42 | - https://learn.microsoft.com/zh-cn/ef/core/dbcontext-configuration/
43 |
44 |
45 |
46 | ## An error occurred while saving the entity changes. See the inner exception for details.
47 | - 字段长度不够
48 | https://blog.csdn.net/weixin_48246845/article/details/126867454
49 |
50 |
51 | ## gRPC
52 | - https://www.cnblogs.com/stulzq/p/11581967.html#!comments
53 |
--------------------------------------------------------------------------------
/docs/article/code/2022-10-15-后端.md:
--------------------------------------------------------------------------------
1 | ## 极客shjian
2 | - 后端存储技术
3 | - https://time.geekbang.org/column/intro/100046801?tab=catalog
4 | - 中间件核心技术
5 | - https://time.geekbang.org/column/intro/100114001?tab=catalog
6 | - 消息队列
7 | - https://time.geekbang.org/column/article/109572?cid=100032301
8 | - Redis核心技术实战
9 | - https://time.geekbang.org/column/article/268253?cid=100056701
10 | - 从零开始学微服务
11 | - https://time.geekbang.org/column/intro/100014401?tab=catalog
12 | - 架构课
13 | - https://time.geekbang.org/column/intro/100025201?tab=catalog
14 | - .Net Core 开发实战
15 | - https://time.geekbang.org/course/intro/100044601?tab=catalog
16 | ## mysql
17 |
18 |
19 | ## redis
20 |
21 | ## MQ
22 |
23 | ## ES
24 |
25 | ## 数据量大,分表;并发量大,分库,
26 |
--------------------------------------------------------------------------------
/docs/article/code/2022-10-16-mysql.md:
--------------------------------------------------------------------------------
1 | ## linux 登录
2 | ···
3 | mysql -u root -p
4 | ···
5 | 再输入密码
6 |
7 |
8 | // 列出所有数据库
9 |
10 | show databases;
11 |
12 | // 选择数据库
13 | use dvsdb30;
14 |
15 | // 查看查询计划
16 | explain select ***;
17 |
18 | ## 读写分离 中间件
19 | - 官网 https://github.com/sysown/proxysql
20 | - 详细配置 https://www.cnblogs.com/keme/p/12290977.html
21 |
22 |
23 |
24 | ## sql优化
25 | - https://www.cnblogs.com/keme/p/9882663.html
26 |
27 | ## mycat读写分离 分库分表
28 | - https://juejin.cn/post/6930430192511156237
29 |
30 |
31 |
32 | ## 索引
33 | - https://juejin.cn/post/7022138503115276324
34 | - unique 唯一索引 不会重复的字段
35 | - normal 普通索引
36 | - fulltext 全文索引
37 | - spatial 空间索引
38 |
39 | - 联合索引
40 | - 使用的时候必须要有第一个字段的查询,否则联合索引会失效
41 |
42 |
43 |
44 | ## 查看数据表所占的空间大小
45 | ```
46 | // 先切换数据库
47 | use information_schema;
48 |
49 | // 查看数据库db的大小
50 | select concat(round(sum(data_length/1024/1024),2),'MB') as data
51 | from tables where table_schema='dvsdb30';
52 |
53 | // 查询所有表所占空间大小
54 | SELECT table_schema AS '数据库', table_name AS '表名', table_rows AS '记录数',
55 | TRUNCATE(data_length / 1024 / 1024, 2) AS '数据容量(MB)',
56 | TRUNCATE
57 | (index_length / 1024 / 1024, 2) AS '索引容量(MB)'
58 | FROM
59 | information_schema.tables
60 | WHERE
61 | table_schema = 'dvsdb30'
62 | --
63 | ORDER BY
64 | data_length DESC,
65 | index_length DESC;
66 |
67 |
68 | // 查询单表所占空间
69 | SELECT table_schema AS '数据库', table_name AS '表名', table_rows AS '记录数',
70 | TRUNCATE(data_length / 1024 / 1024, 2) AS '数据容量(MB)',
71 | TRUNCATE
72 | (index_length / 1024 / 1024, 2) AS '索引容量(MB)'
73 | FROM
74 | information_schema.tables
75 | WHERE
76 | table_schema = 'dvsdb30'
77 |
78 | and table_name ='CollectDataSummary'
79 | ORDER BY
80 | data_length DESC,
81 | index_length DESC;
82 |
83 |
84 | // 查询单表所占空间
85 | select
86 | table_name,
87 | table_rows,
88 | TRUNCATE(data_length/1024/1024,2) as 'data(MB)',
89 | TRUNCATE(index_length/1024/1024,2) as 'index(MB)'
90 | from information_schema.tables
91 | where table_schema = 'dvsdb30'
92 | and table_name = 'CollectDataSummary'
93 | ```
94 |
95 | - RLink
96 | - http://www.yiidian.com/mysql/mysql-rlike-operator.html
97 |
98 | - 查看mysql事务的级别
99 | ```
100 | show variables like '%tx_isolation%';
101 | ```
102 |
103 |
104 | ## explain 中各个参数的详解说明
105 | - https://juejin.cn/post/7164652941159170078
106 |
107 |
108 | ## mysql中的各种函数
109 | - https://juejin.cn/post/7163148228420960263
110 |
111 | ## union all
112 | - https://juejin.cn/post/6844903737228541965
--------------------------------------------------------------------------------
/docs/article/code/2022-10-28-elasticsearch.md:
--------------------------------------------------------------------------------
1 | - https://www.cnblogs.com/hld123/p/15972227.html
2 | - https://zhuanlan.zhihu.com/p/512758939
3 | - https://www.cnblogs.com/aarond/p/es-1.html
--------------------------------------------------------------------------------
/docs/article/code/2022-11-09-marridb.md:
--------------------------------------------------------------------------------
1 | ## mariadb版本列表
2 | - https://mariadb.org/mariadb/all-releases/
3 |
4 | ## mysql版本列表
5 | - http://mirrors.sohu.com/mysql/
6 |
7 | ## mariadb和mysql版本对应关系列表
8 | - https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/
9 |
10 |
11 | ## systemctl
12 | ```
13 | cd /etc/systemd/system
14 | ```
15 |
16 | ## mariadb 安装目录
17 | ```
18 | whereis mariadb
19 |
20 | /usr/share/mariadb
21 |
22 | ```
23 |
24 |
25 |
26 | ## 查找mariadb安装目录
27 | ```
28 | find / -name mariadb;
29 |
30 | find / -name mysql;
31 |
32 | find / -name my.cnf;
33 |
34 |
35 |
36 | // 数据库文件目录
37 | /var/lib/mysql
38 |
39 | ```
40 |
41 |
42 | ## 卸载mariadb
43 | ```
44 | // 卸载mariadb;
45 | zypper remove mariadb;
46 |
47 |
48 | // 移除配置文件
49 | rm -rf /etc/my.cnf
50 |
51 |
52 | // 查看关联
53 | rpm -qa | grep mariadb
54 |
55 | // 并移除关联
56 | sudo rpm -e mariadb-errormessages-10.2.25-lp150.2.16.1.noarch
57 |
58 |
59 | // 命令直接移除msyql相关
60 | find / -name mysql | xargs rm -rf
61 | ```
62 |
63 |
64 | ## count计算
65 | - https://blog.csdn.net/EDDYCJY/article/details/125688558
66 |
67 | ## CPU爆满
68 | - https://juejin.cn/post/6889327678042669070
--------------------------------------------------------------------------------
/docs/article/code/2022-11-14-docker-mysql.md:
--------------------------------------------------------------------------------
1 | ## 录取mysql镜像
2 | ```
3 | docker pull mysql:5.7
4 | docker pull mysql 最新版本
5 |
6 |
7 | ```
8 |
9 | ## 查看docker容器的日志
10 | ```
11 | // xxx为容器名称
12 | docker logs xxx
13 | ```
14 |
15 | ## 删除容器
16 | ```
17 | /// xxx 为容器id
18 | docker rm xxx
19 |
20 | // 移除容器前先判断容器是否已经停止
21 | docker ps // 查看正在运行的容器
22 |
23 | docker ps -a // 包含没有在运行的容器
24 |
25 | // 停止容器
26 | docker stop xxx
27 | ```
28 |
29 | docker run -d \
30 | --name mysql \
31 | -p 4007:3306 \
32 | -v /usr/local/docker/mysql/config/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \
33 | -v /usr/local/docker/mysql/data/mysql:/var/lib/mysql \
34 | -e MYSQL_ROOT_PASSWORD=sunlight2010 \
35 |
36 |
37 | docker run -d \
38 | --name mysql \
39 | -p 3306:3306 \
40 | -v /usr/local/docker/mysql/config/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \
41 | -v /usr/local/docker/mysql/data/mysql:/var/lib/mysql \
42 | -e MYSQL_ROOT_PASSWORD=sunlight2010 \
43 |
44 |
45 |
46 |
47 | docker run -d \
48 | --name mysql \
49 | -p 4007:3306 \
50 | -v /usr/local/docker/mysql/config/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \
51 | -v /usr/local/docker/mysql/data/mysql:/var/lib/mysql \
52 | -e MYSQL_ROOT_PASSWORD=sunlight2010 \
53 |
54 | ## 修改docker容器中的文件
55 | - https://juejin.cn/post/6875216262830653453
56 |
57 | ## mysql 8.0后密码加密规则发生变化
58 | - https://www.cnblogs.com/hackerxiaoyon/p/10552842.html
59 |
60 | ## mysql8和mysql5.7
61 | - https://juejin.cn/post/7111255789876019208
62 |
63 |
64 | > 注意: 不管docker容器开没开都会进行相互间的拷贝
65 | ## 将docker容器中的文件拷贝到宿主机器中
66 | ```
67 | docker cp ba52a9d7d924:/var/lib/mysql/ba52a9d7d924-slow.log /usr/local/aehyok
68 | ```
69 |
70 |
71 | ## 从宿主机器拷贝到docker容器中
72 | ```
73 | docker cp /usr/local/aehyok ba52a9d7d924:/var/lib/mysql/ba52a9d7d924-1slow.log
74 | ```
--------------------------------------------------------------------------------
/docs/article/code/2022-11-14-mysql-isnull-isnotnull.md:
--------------------------------------------------------------------------------
1 | ## https://www.jb51.net/article/249749.htm
2 |
3 | ## group_concat 详解
4 | - https://blog.csdn.net/weixin_46544385/article/details/120563650
5 |
6 | ## ''与null的区别
7 | ```
8 | // '' 代表存入的是空的字符串 完全不占空间
9 | select * from test where a = ''
10 |
11 | // 而字段中如果有null值,则要通过 is null进行判断,不能用=null
12 | select * from test where a = null
13 |
14 | select * from test where a is null
15 | ```
16 |
17 |
18 | ## null值字段的排序
19 | ```
20 | // null值默认被mysql认为是最小的值
21 | // asc 升序排列,那么a字段中如果有null值的,则会排在最上面
22 | // desc反之,在最后面
23 | select * from test order by a asc;
24 | ```
25 |
26 | ## count 统计
27 | 会将group_num为null的数据过滤掉
28 | ```
29 | select count(group_num) from sc_base_color;
30 | ```
31 |
32 | ## group by
33 | 会将null 进行分组统计
34 | ```
35 | select count(*) from sc_base_color GROUP BY group_num;
36 | ```
37 |
38 |
39 | ## where查询条件中>1 <1
40 | 会将null值也过滤掉
41 | ```
42 | select * from sc_base_color where group_num<1;
43 | ```
44 |
45 |
46 | ## null值字段如果是索引字段
47 |
48 | - 在mysql 5.7以及5.7以下的版本中
49 | 如果某一列上存在null值,并且该字段被设置成了索引字段,那么该字段在查询时被当做查询条件时,如果所查询出来的数据数量超过表总数据的30%,那么该字段的索引将会失效,将会进行全表扫描。
50 | 如果查询出来的数据量小于总数据量的30%,那么该字段的索引将会生效。
51 |
52 | - 在mysql8.0以及8.0+的版本中
53 | 如果a字段设置为索引字段,那么 is null 和is not null 索引将一直生效(可能有一些特殊的情况暂时没有遇到)
54 | ```
55 | select * from test where a is null;
56 |
57 | select * from test where a is not null;
58 | ```
59 |
60 |
61 | ## 索引跳跃
62 | - https://juejin.cn/post/6863770705897455623
63 | - https://dev.mysql.com/doc/refman/8.0/en/range-optimization.html
64 |
65 | ## 设置默认值
66 |
67 | - 1、比如int、bigint类型默认值为-1/0
68 |
69 | - 2、比如varchar类型默认值为空串
70 |
71 | - 3、bigdecimal类型为0等等。
--------------------------------------------------------------------------------
/docs/article/code/2022-11-15-linux.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-18-linux 监控指引.md:
--------------------------------------------------------------------------------
1 | - https://juejin.cn/post/7165767441883398175
2 |
3 |
4 | ## mysql查看
5 | ```
6 | use performance_schema;
7 |
8 | select * from threads;
9 | ```
10 |
11 | ## mysql慢查询查看(mysql8版本)
12 | ```
13 | mysql -uroot -p
14 | // 再输入password
15 |
16 | //切换到具体的数据库
17 | use dvsdb30;
18 |
19 | // 查看慢查询日志是否开启 on为开启 off为关闭 默认是关闭的
20 | show variables like 'slow_query_log';
21 |
22 | // 设置是否开启慢查询日期记录
23 | set global slow_query_log = on; #开启
24 | set global slow_query_log = off; #关闭
25 |
26 | // 查看慢查询的阈值(默认是10秒)
27 | show variables like 'long_query_time';
28 |
29 | // 如果想修改慢查询的阈值
30 |
31 | // 阈值设置为1秒
32 | set long_query_time = 1;
33 |
34 | // 法制设置全局的
35 | set global long_query_time = 1;
36 |
37 | // 查看慢查询日志文件路径
38 | show variables like 'slow_query_log_file';
39 |
40 | cd /usr/bin
41 |
42 | -- 这里-S参数后面跟的r是row的缩写意思是从slow log里查找按照返回行数最高排序,默认是at即平均执行时间。-r 后面跟着的数字是返回几个结果,类似于limit
43 | mysqldumpslow -S r -t 2 /usr/local/aehyok/ba52a9d7d924-slow.log
44 | ```
45 | ## 慢查询 muysqldumpslow 命令的使用
46 | https://juejin.cn/post/6844904037888851976
47 |
48 | ## mysql 最大链接数
49 | - https://juejin.cn/post/6844903876999512078#comment
50 |
51 | - 当前的链接数
52 |
53 | ```
54 | show status like 'Thread%';
55 | ```
56 |
57 | 慢查询日志分析工具
58 |
59 | https://juejin.cn/post/7078552705421180958#heading-13
60 | https://zhuanlan.zhihu.com/p/257975998
61 |
62 | zypper install perl-DBI.x86_64
63 | zypper install perl-DBD-MySQL.x86_64
64 | zypper install perl-IO-Socket-SSL.noarch
65 | zypper install perl-Digest-MD5.x86_64
66 | zypper install perl-TermReadKey.x86_64
67 |
68 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-21-nginx.md:
--------------------------------------------------------------------------------
1 | ## 查看nginx 安装目录
2 | ```
3 | find / -name nginx.conf
4 |
5 | // etc/nginx
6 | // 或者
7 | // usr/local/nginx
8 | ```
9 |
10 |
11 |
12 | ## 设置Nginx 浏览器缓存配置
13 | ```
14 | location /MP{
15 | alias /usr/local/sunlight/dvs/dvs-ui/mp/;
16 | index index.html;
17 | add_header Cache-Control no-cache;
18 | }
19 | ```
20 | - no-cache 每次都到服务器校验新鲜度
21 | - no-store 永远去服务器获取资源
22 |
23 |
24 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-23-Aop.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2022-11-23-Aop.md
--------------------------------------------------------------------------------
/docs/article/code/2022-11-23-环境配置.md:
--------------------------------------------------------------------------------
1 | ## 正式环境配置文件
2 | - 微服务配置文件路径
3 | /usr/local/sunlight/dvs/etc
4 |
5 | - 微服务日志文件路径
6 | /var/log/sunlight
7 |
8 | - mysql数据库文件
9 | /var/lib/mysql
10 | ##
11 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-24-项目上线.md:
--------------------------------------------------------------------------------
1 | ## 前言
2 | 最近正在做的项目上线了,问题很多,有前端的问题也有后端的问题。这里就简单的总结一下。
3 |
4 | ## 前端
5 |
6 | 先说一下前端的问题,这里对代码的探讨不做过多的展示,主要简单说明一下技术的实现方案。
7 |
8 | #### 技术选型问题
9 | h5嵌套到小程序的webview,但是又要用到小程序里的地图定位,就需要由H5跳转到小程序的页面,然后要由小程序页面返回到webview中的h5,这里还需要有一个返回值传到h5中,这里我暂时没想到办法,至少我没想到办法回传数据,于是只能简单的写个定时器,不断的通过接口调用,相当于数据的回传刷新了。
10 |
11 | 这里如果完全是小程序的页面就不会存在这个问题了,不过水饺咱没时间全部用小程序的页面呢?
12 |
13 | #### 表单重复提交问题
14 | 由于项目中主要的就是数据的录入,所以出问题最多的就是在表单多次提交,其实也有很多的方法。
15 | - 方法一: 按钮提交时,将按钮设置为加载状态,并不可点击。
16 | - 方法二: 通过pinia保存状态数据,点击保存时对比数据,数据如果未被修改,则不调用接口保存,有效的减少了服务器写入数据的压力。
17 |
18 | #### 缓存问题
19 | 由于是h5嵌套到webView的小程序中的,所以有时候明明更新了前端,用户却还是之前的版本,这里想到的办法就是通过nginx 配置 缓存
20 | ```
21 | location /{
22 | alias /usr/local/xxxx;
23 | index index.html;
24 | add_header Cache-Control no-cache;
25 | }
26 | ```
27 | no-cache 协商缓存,每次也去服务器请求,但会进行判断是否是新的资源,如果是旧的资源,则直接返回304使用客户端的缓存。
28 |
29 | no-store 相当于每次请求都会从服务器获取前端页面,不会进行缓存。
30 |
31 | #### 其他
32 | 当然还存在其他一些小问题,比如用户操作便利性的改进,以及友好的错误提示 等等。
33 |
34 | ## 后端
35 | 由于我也参与了一些后端接口的工作,对整个前后端的情况都有所了解。
36 |
37 | #### 重复数据
38 |
39 | 由于前期时间确实比较紧张,准备不足,导致程序存在一些问题,经过排查发现,在导入数据的时候没有判断数据的唯一性,导致数据重复。这个算是一个bug,目前已经修复了。
40 | #### 数据延迟
41 |
42 | 由于高峰期存在接口10秒都没有提交成功的情况,后来发现mysql事务中的查询存在比较大的耗时,经过调整添加索引修改查询条件,不进行全表扫描,目前观察不存在事务高峰期数据并发导致Mysql数据库CPU拉满的情况。
43 |
44 | #### 日志处理
45 |
46 | 应用中存在记录日志文件过大,并发量大的时候,导致频繁插入,而且文件越大插入速度必然很慢,这里做了文件大小限制,将大小设置未10M,很小了,速度非常快。并且在应用中对日志类型也就是写入日志的频次进行 修改,没有必要的日志进行了移除。
47 |
48 | #### 用户身份
49 | 通过调试发现,每次接口调用,用户身份信息都会重新获取,而且要请求mysql,这个看了一下并不是那么容易处理,暂时还没解决。这里可以进行缓存处理,但是发现有一点复杂,后面有时候肯定还是要处理的。
50 |
51 | ## 总结
52 |
53 | 最近刚好在重装自己的办公电脑,以及个人华为云服务器,
54 |
55 |
56 | - linux磁盘挂载问题
57 | - mysql数据备份问题
58 | - 服务器扩容前的处理事项、应用备份、以及相关配置文件
59 | - 服务器扩容后的检查工作、磁盘状态、应用、数据库、redis等正常使用
60 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-25-mysql删除重复数据.md:
--------------------------------------------------------------------------------
1 |
2 | -- 查询出所有重复的身份证号 (365条记录)
3 | select c.hzidCard from DAS_householdcode c GROUP BY c.hzidCard HAVING count(c.hzidCard) > 1
4 | ('1','2','3')
5 |
6 | -- 然后根据重复的身份证号码 查询出所有重复的记录
7 | select * from DAS_householdcode s
8 | where s.hzidCard in ('1','2','3')
9 |
10 | -- 所有重复的记录总共 972
11 |
12 | -- 607+365=972
13 |
14 |
15 | -- 查询出要留下那些记录 (留下重复记录中插入时间最晚的记录)
16 | select aa.cid from (select c.id cid, max(c.createtime) ctime from DAS_householdcode c GROUP BY c.hzidCard HAVING count(c.hzidCard) > 1) aa
17 |
18 | -- 查询出要删除的记录(在查处所有重复记录的基础上,然后not in 要留下的记录)
19 | select * from DAS_householdcode s
20 | where s.hzidCard in ('1','2','3')
21 | and s.id not in (select aa.cid from (select c.id cid, max(c.createtime) ctime from DAS_householdcode c GROUP BY c.hzidCard HAVING count(c.hzidCard) > 1) aa)
22 |
--------------------------------------------------------------------------------
/docs/article/code/2022-11-28-正则.md:
--------------------------------------------------------------------------------
1 | ## 手机号正则
2 | ```
3 | // 只要是1开头,并且是11位的数字
4 | /^1\d{10}$/
5 |
6 | // 只要是13,14,15,16,17,18,19开头即可
7 | /^1[3-9]\d{9}$/
8 |
9 | // 11位或13位 还是 11位到13位,还是1到13位
10 |
11 | // 13位数字或者11位数字
12 | ^\d{13}$|^\d{11}$
13 |
14 |
15 | ```
16 |
17 |
18 | ## 身份证校验规则
19 | https://uutool.cn/id-card/
20 |
21 |
22 | ## 匹配中文
23 | ```
24 | [u4e00-u9fa5]
25 | ```
26 |
27 |
28 |
29 | ## 常用正则
30 | - https://juejin.cn/post/7025490351032893476#heading-7
--------------------------------------------------------------------------------
/docs/article/code/2022-11-30-.net-core异步.md:
--------------------------------------------------------------------------------
1 |
34 |
--------------------------------------------------------------------------------
/docs/article/code/2022-12-01-docker-compose.md:
--------------------------------------------------------------------------------
1 |
2 | - spug 官网配置
3 | - https://spug.cc/docs/system-account
4 | - http://139.159.245.209:66/welcome/info
5 |
6 |
7 | - docker compose 安装
8 | - https://juejin.cn/post/7157862693435605023
9 |
10 | - yml 配置文件
11 | - https://spug.cc/docs/install-docker
12 | docker compose up -d
13 | docker exec spug init_spug aehyok sunlight2022
14 |
15 |
16 | linux 安装git
17 |
18 | ssh-keygen -o
19 |
20 | cd /root/.ssh
21 |
22 |
23 |
24 |
25 |
26 | 公钥
27 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDxqqFnd3jsbHCiOMCM8UAx29dE91eJ+CpWROcBjhZunFzpLvpi2qjAUTz9KyD51QzwYWaxwjzjgDA/QdSOMGCk9S1Sa3BJ1UscQpsXHUx07PZc0hq1pv0UM+XXHpoeKRokpdqXEIxtXwKpPgAEV/vuMS42ZbpI+Qx+PTS9GCIQAxnj55/ypD66uuq9FpEynljJ/wZUAFkakiItWnzNR3zxxncyLYrx13tVT15iLDpcr+eP3uD1lAPPgOSPqc9Ro2fYOdsA3KQ1hwMYu+oQ7yyDLg5FnRnsQI/2Oemn3+oR8GiiMAUTqktXV/vQd6UW2cW22bHyBg37ReHxaDSqglzt
28 |
29 | 私钥
30 | -----BEGIN RSA PRIVATE KEY-----
31 | MIIEogIBAAKCAQEA8aqhZ3d47GxwojjAjPFAMdvXRPdXifgqVkTnAY4Wbpxc6S76
32 | YtqowFE8/Ssg+dUM8GFmscI844AwP0HUjjBgpPUtUmtwSdVLHEKbFx1MdOz2XNIa
33 | tab9FDPl1x6aHikaJKXalxCMbV8CqT4ABFf77jEuNmW6SPkMfj00vRgiEAMZ4+ef
34 | 8qQ+urrqvRaRMp5Yyf8GVABZGpIiLVp8zUd88cZ3Mi2K8dd7VU9eYiw6XK/nj97g
35 | 9ZQDz4Dkj6nPUaNn2DnbANykNYcDGLvqEO8sgy4ORZ0Z7ECP9jnpp9/qEfBoojAF
36 | E6pLV1f70HelFtnFttmx8gYN+0Xh8Wg0qoJc7QIDAQABAoIBAE2wGKr2UT1PrvW3
37 | YM7uT0C394AIM2/7A0EwbUKmtrdgNM4ReBSHTnBkrUKFttgZkUtFRIoocwJ/lwL+
38 | 2qHLE4Zz+tngB/z0QG0ZTFol5QpBkwFL2aJDyF/SPzTkdY70j57wYlDl1P7j6CsX
39 | 71F2J1rvHHgIQ9ZpmYaLjoSrWWfjt2DQpsdrDgVtgbDmPrEUY3AUHQbthaQQEZX0
40 | 0O/j2jS3pzoQxecOTd0uuNrhm70Lj6eLnvqW3Eo7U+5xTjLcFuBmT2bY1SgYanQB
41 | 5eFZ39E3FzzX9PL8gX36WGIX7ah8mvPDDi9fTpFUq4igL6tPXlCgGS5Q154nSUPA
42 | MpUVngECgYEA/UllVCKS6IsfhNLsDvIpSbFGFSyAVWy39er/GIMhmQc9uNJUS+4r
43 | KoarkFfcg1uvk1vIfyrMwNiFUKCd0w1F3ANQeBB4Bodn0j3Mbvos/pyIBEK62uJZ
44 | DcDGU4llddPr+A3m1AyruHu2WUBLmwRsdZjFPsk14qMwrMkfwW0LbOECgYEA9EFe
45 | MBt6yn2ffdj1+OdT54bdn/8UJ27KmXLurUj4zvXvAhu0gGO2j14QjpeGtA4ufqVk
46 | s6nyrdU1DPxyVrfSa0K+U0Y5y5mj5hiosJAggahZ0lwhp0J2WfuQxN8Lr/jfzHxl
47 | jYpzlvtIPaT6aRmVZFZJNl/bhO81JdvPcfX3BY0CgYByepru1RWbP05GpWKGOtOI
48 | eDRZ25xBf/sBjm4v8QzdcpVmFMJ+8y3VcbrXaa7EPEt2CfTr7TdQLkzLLV1IB+a8
49 | U08qhR8KrGazcrUUr8Roa+1aJ6L2zXk8qxW4qhAOmnM70WS0EOoIXvoDCvlhHjW7
50 | TQpRn3XYcrPMVLcioJuaYQKBgFpQ5WvybUf8hYH6PJGJr/u3YbGslx4xmFZ/KgQH
51 | LIESbQshhW/H7xQ6GvMu0k83wzdvHrpUR/jBEnm3yuuH0xV4O3n9SJehOvp0+cM3
52 | t91Zi8T97i+zoqGJJLG3K9Iou1AYW1Cn9i/IwKCSpUlBfXz5bt7dOQWBkexqx90C
53 | rxFtAoGAJ9IXa5dP4jzQ4fG6k/trMd18EayQgI5JDpgQDKy8xBsrlymc6odef0yj
54 | fB1IK/sJtKcleJTVtrPKblpckz3RrouvQkexv8BiAC856hzLRMgumPZeDoj5UoJ7
55 | YknwGw3FpECh+uPkR9SY4VjnWfTAaI3BL3Oom4LBhnQ9vB9DsM8=
56 | -----END RSA PRIVATE KEY-----
57 |
--------------------------------------------------------------------------------
/docs/article/code/2022-12-03-Mysql学习了解总结.md:
--------------------------------------------------------------------------------
1 | ## 前言
2 | 最近对mysql的操作比较多一些,主要是项目上线以后,难免会有一些数据上的问题。开始的时候还主要由后端来处理,后面数据问题确实比较多,于是我就找后端要来服务器的账号密码,连上数据库顺便来看看数据的问题。
3 |
4 | ## mysql 索引
5 |
6 | 最开始项目刚上线的时候,因为没有数据,所以根本没什么感觉,突然某一天,就感觉到接口的响应时间明显的变慢了。但其实后端并没有什么线上的经验,所以我借机就要来了服务器的账号密码。基本上除了主键以外,没有加任何的索引。打到数据库上的查询就实打实的有一些慢了,(虽然这里使用了一主四从),四个从库相当于都是用来做查询使用的,但是在没有索引的情况下,真的有点慢了。我跟后端稍作沟通,我就准备直接在正式环境添加数据库表的索引了。
7 |
8 | 那么首先要做的第一件事情便是,查看一下mysql的慢查询是否有打开,好家伙,还不错,竟然打开了。下面是常用的几个查询慢SQL的脚本语句
9 |
10 | ```
11 | // 得到返回记录集最多的10条SQL:
12 | mysqldumpslow -s r -t 10 /var/lib/mysql/slow.log
13 |
14 | // 得到访问次数最多的10条SQL:
15 | mysqldumpslow -s r -t 10 /data/mysql/slow.log
16 |
17 | // 得到按照时间排序的前10条里面含有左连接的SQL:
18 | mysqldumpslow -s t -t 100 -g "left join" /var/lib/mysql/slow.log
19 |
20 | // 也支持管道符命令
21 | mysqldumpslow -s t -t 10 -g "left join" /var/lib/mysql/slow.log | more //分页显示
22 | ```
23 |
24 | #### 技术选型问题
25 | h5嵌套到小程序的webview,但是又要用到小程序里的地图定位,就需要由H5跳转到小程序的页面,然后要由小程序页面返回到webview中的h5,这里还需要有一个返回值传到h5中,这里我暂时没想到办法,至少我没想到办法回传数据,于是只能简单的写个定时器,不断的通过接口调用,相当于数据的回传刷新了。
26 |
27 | 这里如果完全是小程序的页面就不会存在这个问题了,不过水饺咱没时间全部用小程序的页面呢?
28 |
29 | #### 表单重复提交问题
30 | 由于项目中主要的就是数据的录入,所以出问题最多的就是在表单多次提交,其实也有很多的方法。
31 | - 方法一: 按钮提交时,将按钮设置为加载状态,并不可点击。
32 | - 方法二: 通过pinia保存状态数据,点击保存时对比数据,数据如果未被修改,则不调用接口保存,有效的减少了服务器写入数据的压力。
33 |
34 | #### 缓存问题
35 | 由于是h5嵌套到webView的小程序中的,所以有时候明明更新了前端,用户却还是之前的版本,这里想到的办法就是通过nginx 配置 缓存
36 | ```
37 | location /{
38 | alias /usr/local/xxxx;
39 | index index.html;
40 | add_header Cache-Control no-cache;
41 | }
42 | ```
43 | no-cache 协商缓存,每次也去服务器请求,但会进行判断是否是新的资源,如果是旧的资源,则直接返回304使用客户端的缓存。
44 |
45 | no-store 相当于每次请求都会从服务器获取前端页面,不会进行缓存。
46 |
47 | #### 其他
48 | 当然还存在其他一些小问题,比如用户操作便利性的改进,以及友好的错误提示 等等。
49 |
50 | ## 后端
51 | 由于我也参与了一些后端接口的工作,对整个前后端的情况都有所了解。
52 |
53 | #### 重复数据
54 |
55 | 由于前期时间确实比较紧张,准备不足,导致程序存在一些问题,经过排查发现,在导入数据的时候没有判断数据的唯一性,导致数据重复。这个算是一个bug,目前已经修复了。
56 | #### 数据延迟
57 |
58 | 由于高峰期存在接口10秒都没有提交成功的情况,后来发现mysql事务中的查询存在比较大的耗时,经过调整添加索引修改查询条件,不进行全表扫描,目前观察不存在事务高峰期数据并发导致Mysql数据库CPU拉满的情况。
59 |
60 | #### 日志处理
61 |
62 | 应用中存在记录日志文件过大,并发量大的时候,导致频繁插入,而且文件越大插入速度必然很慢,这里做了文件大小限制,将大小设置未10M,很小了,速度非常快。并且在应用中对日志类型也就是写入日志的频次进行 修改,没有必要的日志进行了移除。
63 |
64 | #### 用户身份
65 |
66 | ## 总结
67 |
68 |
69 |
70 | - linux磁盘挂载问题
71 | - mysql数据备份问题
72 | - 服务器扩容前的处理事项、应用备份、以及相关配置文件
73 | - 服务器扩容后的检查工作、磁盘状态、应用、数据库、redis等正常使用
74 |
--------------------------------------------------------------------------------
/docs/article/code/2022-12-09-zx.md:
--------------------------------------------------------------------------------
1 |
2 | 为了偷懒,我用google/zx一键打包编译前后端项目到指定环境
3 |
4 |
--------------------------------------------------------------------------------
/docs/article/code/2022-12-20-ubuntu.md:
--------------------------------------------------------------------------------
1 | ## ubuntu docker mysql
2 | https://juejin.cn/post/7143148167125532680
3 |
4 |
5 |
6 |
7 |
8 | ## 启动docker 异常
9 | - docker logs containerid
10 | - You need to specify one of MARIADB_ROOT_PASSWORD, MARIADB_ROOT_PASSWORD_HASH, MARIADB_ALLOW_EMPTY_ROOT_PASSWORD and MARIADB_RANDOM_ROOT_PASSWORD
11 | ```
12 |
13 | // 设置MARIADB_ROOT_PASSWORD 密码
14 | docker run --restart always -itd --name mariadb-1 -e MARIADB_ROOT_PASSWORD=sunlight2010 -p 3306:3306 mariadb
15 |
16 | ```
17 |
18 |
19 | ## 安装nginx
20 | ```
21 | apt-get install nginx
22 |
23 | nginx -v
24 | ```
--------------------------------------------------------------------------------
/docs/article/code/2022-12-20-zabbix.md:
--------------------------------------------------------------------------------
1 | ## 自学
2 | https://www.cnblogs.com/yaoyaojcy/p/8072122.html
3 |
4 |
5 |
6 | https://www.cnblogs.com/yaoyaojcy/p/11864140.html
--------------------------------------------------------------------------------
/docs/article/code/2022-12-24-mysql主从.md:
--------------------------------------------------------------------------------
1 | https://www.cnblogs.com/elsons/p/15763248.html
2 |
3 |
4 |
5 | ## 查看主从
6 | maxctrl list servers
7 |
8 |
9 |
10 | ## 查看运行进程
11 | ```
12 | top
13 |
14 | top -Hp pid
15 |
16 | // 查找到具体的mysql 进程id
17 | pidof mysqld
18 | ```
19 |
20 | ## mysql 慢查询日志和数据文件路径
21 | ```
22 | /var/lib/mysql
23 | ```
24 | 清空慢查询日志,并恢复
25 | https://blog.csdn.net/weixin_41275260/article/details/125461408
26 |
27 | ## mysql group by 字段或者非聚合字段是否可以添加到select 后
28 | - https://blog.csdn.net/qq_34637782/article/details/101029487
29 |
30 | ## 查看磁盘文件大小
31 | - du -sh *
32 |
33 | ## 查看linux 磁盘分区
34 | - df -h
35 |
36 | ## mysql文件存储位置
37 | MariaDB [(none)]> show variables like '%%datadir';
38 | +---------------+-----------------+
39 | | Variable_name | Value |
40 | +---------------+-----------------+
41 | | datadir | /var/lib/mysql/ |
42 | +---------------+-----------------+
43 | 1 row in set (0.001 sec)
44 |
45 | ## 查看事务 查看锁
46 | - https://blog.csdn.net/qq_42764269/article/details/122045831
47 |
48 | ## 主从停止https://blog.csdn.net/weixin_34981046/article/details/113127203
49 |
50 |
51 | ## mysql 全量备份
52 | - https://juejin.cn/post/7135363385700384799#heading-18
53 | - https://www.jianshu.com/p/17337e3d3a33 这一篇非常关键
54 | 全量备份的时候不要锁表
55 |
56 | mysqldump -uroot -p123456 db1 > db1.sql
57 |
58 | /usr/share/mysql/policy/apparmor
59 |
60 | /etc/my.cnf.d
61 |
62 | create user 'root'@'%' identified with mysql_native_password by 'sunlight2010';
63 |
64 | ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY 'M9y512!';
65 |
66 | create user 'root'@'%' identified by 'sunlight2010';
67 | update mysql.user set plugin='mysql_native_password' where
68 |
69 | grant all privileges on *.* to 'root'@'%';
70 |
71 | grant all privileges on *.* to 'root'@'localhost';
72 |
73 | // 新建一个用户
74 | CREATE USER 'course'@'localhost' IDENTIFIED BY '123456';
75 |
76 | // 并将数据库添加到该用户下
77 | grant all privileges on *.* to 'course'@'localhost';
78 |
79 | flush privileges;
80 |
81 | ## mysql最大链接数
82 | - http://t.zoukankan.com/JentZhang-p-12581116.html
83 |
84 | /etc/my.cnf.d
85 |
86 | systemctl daemon-reload
87 |
88 | systemctl restart mysqld.service
89 |
90 | ## mysql count 汇总统计
91 | - https://juejin.cn/post/7130276921534840845
--------------------------------------------------------------------------------
/docs/article/code/2023--8-15-dvs.md:
--------------------------------------------------------------------------------
1 | ## 微信小程序首页
2 |
3 | - banner页 先取当前级别,再取上级
4 | - 应急发布-最新消息 如果有发布 则会显示
--------------------------------------------------------------------------------
/docs/article/code/2023-01-09-nacos.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2023-01-09-nacos.md
--------------------------------------------------------------------------------
/docs/article/code/2023-01-09-ocelot.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | ## ocelot 使用说明详解
4 | - https://www.cnblogs.com/jesse2013/p/net-core-apigateway-ocelot-docs.html
5 | ## ocelot demo
6 | - https://www.c-sharpcorner.com/blogs/api-gateway-in-net-60-using-ocelot
7 |
8 | https://www.cnblogs.com/jesse2013/p/net-core-apigateway-ocelot-docs.html
9 |
10 |
11 |
12 | ## nginx 配置三个ocelot节点
13 | - 这三个ocelot节点可以加入到consul中,并添加健康检查的接口,供consul进行服务注册和健康检查
14 | ```
15 | server {
16 | listen 8500;
17 | location / {
18 | proxy_pass http://xdpconsul;
19 | proxy_redirect default;
20 | }
21 | }
22 |
23 | upstream xdpconsul {
24 | server 116.204.98.9:5003;
25 | server 116.204.98.9:5030;
26 | server 116.204.98.9:5300;
27 | }
28 | ```
29 |
30 | ## 然后在ocelot.json 配置真正的接口服务器
31 | - 这里部署节点
32 |
33 | ```
34 |
35 | ```
36 |
37 | ## ocelot和consul 结合使用
38 | - https://www.cnblogs.com/axzxs2001/p/8487521.html
39 | - ocelot中配置consul的配置服务发现 https://www.cnblogs.com/edisonchou/p/consul_cluster_based_on_docker_introduction.html
40 |
41 | ## ocelot官方文档
42 | - https://ocelot.readthedocs.io/en/latest/introduction/notsupported.html
43 |
44 | ## ocelot 动态路由 dynamic routing
45 | - https://www.cnblogs.com/irocker/p/ocelot-servicediscovery.html
46 |
47 | ## docker dotnet
48 | - https://learn.microsoft.com/zh-cn/dotnet/core/docker/build-container?source=recommendations&tabs=linux
--------------------------------------------------------------------------------
/docs/article/code/2023-01-10-EventBus.md:
--------------------------------------------------------------------------------
1 | ## C# EventBus
2 | - https://www.cnblogs.com/daxnet/p/8082694.html
--------------------------------------------------------------------------------
/docs/article/code/2023-01-11-docker-sqlserver.md:
--------------------------------------------------------------------------------
1 |
2 | - https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-ver16&pivots=cs1-bash
3 |
4 | ## 查找镜像
5 | ```
6 | docker search mcr.microsoft.com/mssql/server
7 | ```
8 |
9 | ## 生成容器并运行
10 |
11 | ```
12 | sudo docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=M9y2512!" \
13 | -p 1433:1433 --name sql1 --hostname sql1 \
14 | -d \
15 | mcr.microsoft.com/mssql/server
16 | ```
17 |
18 |
19 | ## 进入容器
20 | ```
21 | sudo docker exec -it sql1 "bash"
22 | ```
23 |
24 | ## 执行链接
25 | ```
26 | /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "XXXXXXX"
27 |
28 | ```
29 |
30 |
--------------------------------------------------------------------------------
/docs/article/code/2023-01-31-docker-dotnet.md:
--------------------------------------------------------------------------------
1 |
11 | ## Dockerfile下的内容
12 | ```
13 | FROM mcr.microsoft.com/dotnet/aspnet:6.0
14 |
15 | WORKDIR /usr/share/dotnet/ClassService/
16 |
17 | COPY ClassService/ /usr/share/dotnet/ClassService/
18 | ENTRYPOINT ["dotnet", "ClassService.dll","--urls","http://*:5005"]
19 | ```
20 |
21 | ## 根据Dockerfile创建镜像
22 | ```
23 | docker build -t classservice .
24 | ```
25 |
26 | ## 根据镜像创建容器
27 | ```
28 | docker run -d -p 5005:5005 --name classservice1 classservice
29 | ```
30 |
31 | ## 操作容器
32 | ```
33 | docker restart xxx
34 | docker stop xxx
35 | ```
36 |
37 | ## 映射路径的方式
38 |
39 | #### Dockerfile文件
40 | ```
41 | FROM mcr.microsoft.com/dotnet/aspnet:6.0
42 |
43 | WORKDIR /usr/share/dotnet/ClassService/
44 |
45 | ENTRYPOINT ["dotnet", "ClassService.dll","--urls","http://*:5005"]
46 | ```
47 |
48 | #### 生成镜像和容器
49 | ```
50 |
51 | // 生成镜像
52 | docker build -t class .
53 |
54 | // 映射路径
55 | docker run -d -p 5005:5005 --name classservice1 -v /usr/local/aehyok/docker/dotnet/ClassService:/usr/share/dotnet/ClassService class
56 | ```
57 |
58 |
--------------------------------------------------------------------------------
/docs/article/code/2023-02-01-中医.md:
--------------------------------------------------------------------------------
1 | ## 中医和西医的分析
2 | - https://www.zhihu.com/question/408326487/answer/2237074755
--------------------------------------------------------------------------------
/docs/article/code/2023-02-08-面试整理.md:
--------------------------------------------------------------------------------
1 | ## 前端
2 | #### localstorage
3 | - https://juejin.cn/post/7163075131261059086
4 |
5 | #### 首页加载速度
6 | - https://juejin.cn/post/7188894691356573754
7 |
8 | #### 防抖和节流
9 | - https://juejin.cn/post/6901493600098779150
10 | - https://coding.imooc.com/learn/questiondetail/194653.html
11 |
12 | ## 基础整理
13 |
14 | #### 执行上下文
15 | 首先从宏观的角度来说: JavaScript代码要想能够被执行,就必须先被V8引擎编译,编译完成之后才会进入到执行阶段,总结为六个字:先编译再执行。
16 |
17 | #### 调用栈
18 | console.trace() 可以打印栈中的信息
19 |
20 | 调用栈是一种数据结构,它记录了我们在程序中的位置。如果我们运行到一个函数,这个时候JavaScript引擎其实是会为当前函数创建函数执行上下文,它就将该函数执行上下文放到栈顶,当从这个函数返回的时候,就会将这个函数执行上下文从栈顶弹出,这就是调用栈做的事情。也就是说执行上下文是通过调用栈来管理的。
21 |
22 | #### var const let
23 | var定义的变量存在变量提升,块级作用域对var无效。
24 | let不会有变量提升,有块级作用域、函数作用域和全局作用域。
25 | - 暂时性死区 https://juejin.cn/post/6968399560162951204
26 |
27 |
28 | #### 闭包
29 | 函数创建完,闭包就形成了,并且不能自动释放,可选择手动设置null进行释放闭包。
30 |
31 | 我将永远记住闭包的方法是通过背包的类比。当一个函数被创建并传递或从另一个函数返回时,它会携带一个背包。背包中是函数声明时作用域内的所有变量。
32 |
33 | - https://juejin.cn/post/6844903858636849159
34 | - https://juejin.cn/post/7120371754274553887
35 | - https://juejin.cn/post/6937469222251560990
36 | - https://juejin.cn/post/7196636673694285882
37 | - https://juejin.cn/post/7120371754274553887
38 |
39 | #### 原型和原型链
40 | - https://juejin.cn/post/7126061672032108551
41 |
42 | #### 深拷贝和浅拷贝
43 |
44 | - weakmap
45 | - https://es6.ruanyifeng.com/#docs/set-map#WeakMap
46 | - weakmap 的key为对象
47 | - weakmap 键名所引用的对象都是弱引用。 WeakMap 弱引用的只是键名,而不是键值。
48 |
49 | #### ES6 Class
50 | - https://es6.ruanyifeng.com/#docs/class
--------------------------------------------------------------------------------
/docs/article/code/2023-02-10-单例模式.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2023-02-10-单例模式.md
--------------------------------------------------------------------------------
/docs/article/code/2023-02-13-linux-mariadb.md:
--------------------------------------------------------------------------------
1 | ## linux
2 | ```
3 | ip 用户名 密码
4 | 175.178.60.76 root Hk
5 | ```
6 |
7 | ## 设置mariadb源
8 | ```
9 | cd /etc/yum.repos.d
10 | vim Mariadb.repo
11 |
12 |
13 |
14 | [mariadb]
15 | name = MariaDB
16 | baseurl = https://mirrors.aliyun.com/mariadb/yum/10.4/centos7-amd64
17 | gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
18 | gpgcheck = 1
19 | ```
20 |
21 | ## mariadb
22 | ```
23 | yum install MariaDB-server
24 |
25 |
26 | systemctl enable mariadb
27 |
28 | systemctl start mariadb
29 |
30 | // 设置密码 M9
31 | mysql_secure_installation
32 |
33 | ```
34 |
35 | ## 可能会乱码设置
36 | - https://juejin.cn/post/7096757877909487629
37 | ```
38 | utf8mb4
39 | utf8mb4_unicode_ci
40 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-02-21-chatgpt.md:
--------------------------------------------------------------------------------
1 |
2 | ## 简介
3 | - https://platform.openai.com/docs/introduction
4 |
5 | ## api keys
6 | - https://platform.openai.com/account/api-keys
7 |
8 | ## nodejs demo
9 | - https://github.com/openai/openai-quickstart-node
10 |
11 | ## go
12 | - https://github.com/eatmoreapple/openwechat
13 |
14 |
15 |
16 | - https://platform.openai.com/docs/introduction
17 |
18 | ## gpt3.5
19 | - https://platform.openai.com/docs/models/gpt-3-5
20 |
21 |
22 |
23 |
24 | ## edge dev下载
25 | - https://www.microsoft.com/zh-cn/edge/download?form=MA13FJ
26 |
27 |
28 | ## fq
29 | - 总的 https://9.234456.xyz/abc.html?t=1677812313354
30 |
31 | - 一个
32 | - https://jike191.com/user 455043818@qq.com Hk!!!
33 | - https://9.234456.xyz/abc.html?t=1677812313354
34 |
35 |
36 | - 一个月的
37 | - https://v3ssy.xyz/#/dashboard
38 |
39 | ## 腾讯云 云函数
40 | - nodejs 版本
41 | - https://github.com/Ice-Hazymoon/openai-scf-proxy/issues/2
42 | - https://ai.okmiku.com/translate
43 |
44 |
45 | - 新加坡
46 | - https://service-kqjbl0h8-1253646855.sg.apigw.tencentcs.com/v1/completions
47 | - 香港
48 |
49 | - go 版本
50 | - https://github.com/geekr-dev/openai-proxy
51 |
52 | ## openai封装库
53 | - nodejs https://github.com/transitive-bullshit/chatgpt-api
54 | - go
55 |
56 |
57 | ## Cloudflare Workers
58 | - https://dash.cloudflare.com/ 455043818@qq.com Hk!!!
59 |
60 |
61 | ## fq
62 | - https://freemycloud.me/#/register 455043818@qq.com Hk!!!
63 |
64 |
65 | ## 查看openai网站的状态
66 | - https://status.openai.com
67 | 1111
68 |
69 |
70 | ## sql翻译
71 | - https://github.com/whoiskatrin/sql-translator
72 |
73 |
74 | ## tokenizer
75 | - https://github.com/openai/tiktoken
76 | - https://platform.openai.com/tokenizer
--------------------------------------------------------------------------------
/docs/article/code/2023-02-22-go-gin.md:
--------------------------------------------------------------------------------
1 | https://gin-gonic.com/zh-cn/docs/examples/ascii-json/
--------------------------------------------------------------------------------
/docs/article/code/2023-03-15-embdding.md:
--------------------------------------------------------------------------------
1 | U7eIo_o9EySNfaAAK26G31FtJrtuYKop9ZCHQM108Nz3KL8hFbfTVw
2 |
3 |
4 | curl \
5 | -X GET 'https://57764f9a-d310-4e55-b5c0-0b6c7092c831.us-east-1-0.aws.cloud.qdrant.io:6333' \
6 | --header 'api-key: 9JfsjZRcYP7wTQUV8ihWJ7TVnYLX7BDklcRGsXBQ7XTVAwcYt_WBUA'
7 |
8 |
9 | curl \
10 | -X GET 'https://57764f9a-d310-4e55-b5c0-0b6c7092c831.us-east-1-0.aws.cloud.qdrant.io:6333' \
11 | --header 'api-key: kThWcexRpedS30EyAutZt1ugEZtgDXdwj5_ixU22RQP5VfTc0q7woQ'
12 |
13 |
14 |
15 | curl \
16 | -X GET 'https://b4dfecea-3f6d-4f9b-a7ce-e0dfbb1efd24.us-east-1-0.aws.cloud.qdrant.io:6333' \
17 | --header 'api-key: Q7q9WRRps_Vy6T9n3E0eCmW8Ak0TRFzJWK4Ci-AG3xzzYCT4c-roXg'
18 |
19 | ## QDrant
20 | - 接口说明
21 | - https://github.com/qdrant/qdrant/blob/master/QUICK_START.md
22 | - https://ui.qdrant.tech/#/
23 |
24 |
25 | 将本地答案数据集,转为向量存储到向量数据
26 | 当用户输入查询的问题时,把问题转为向量然后从向量数据库中查询相近的答案topK 这个时候其实就是我们最普遍的问答查询方案,在没有GPT的时候就直接返回相关的答案整个流程就结束了
27 | 现在有GPT了可以优化回答内容的整体结构,在单纯的搜索场景下其实这个优化没什么意义。但如果在客服等的聊天场景下,引用相关领域内容回复时,这样就会显得不那么的突兀。
28 |
29 | -- 前提是:先将初始化数据通过embeddings 转换为向量数据存储到空间数据库 qdrant
30 |
31 | -- 调用接口将输入文本转变为向量 https://api.openai.com/v1/embeddings
32 |
33 |
34 | - Embedding 理论讲解
35 | - https://zhuanlan.zhihu.com/p/164502624
36 | - https://mp.weixin.qq.com/s/RQN0y2l9thv0yIOx-LW3Pw
--------------------------------------------------------------------------------
/docs/article/code/2023-03-17-supabase.md:
--------------------------------------------------------------------------------
1 | https://app.supabase.com/ github账号登录
2 |
3 | - 创建组织OpenAI
4 | - 创建项目 aehyok sN7pR9GUeebWu8iu
5 |
6 |
7 |
8 |
9 |
10 |
11 | - 盛道和夫
12 | - https://github.com/ThaddeusJiang/inamori-kazuo-gpt
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | qdrant github登录
42 |
43 |
44 |
45 |
46 | ## qdrant 接口参数详解
47 |
48 | - 云服务 https://cloud.qdrant.io/
49 | curl \
50 | -X GET 'https://29bc7cba-253f-40d6-9b4e-e39bd55a8aa1.us-east-1-0.aws.cloud.qdrant.io:6333' \
51 | --header 'api-key: MHTxvf5S2sIdE-p0T7B7yA42M5ZXXSBmp6WrtZvatTg4vQ347vD5qA'
52 |
53 |
54 |
55 | - https://github.com/qdrant/qdrant/blob/master/QUICK_START.md
56 |
57 | - 接口swagger https://ui.qdrant.tech/#/
58 |
59 |
60 | [dashboard/user/api_keys](https://api.openai.com/dashboard/user/api_keys) post
61 |
62 | {
63 | action: "create"
64 | }
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/docs/article/code/2023-03-23-ai虚拟人.md:
--------------------------------------------------------------------------------
1 | 现代产品往往涉及很多来自不同渠道的用户调查数据,比如访谈、在线客服聊天记录、客户邮件、问卷调查和各种平台上的客户评价等。要整理和理解这些数据非常困难。通常,我们会把这些数据整理得井井有条,并用各种标签进行分类。
2 |
3 | 但如果我们有一个人工智能聊天机器人,它可以回答所有关于用户研究数据的问题,那该多好呀!这个机器人可以通过查找大量的历史用户研究数据,为我们的新项目、产品或者营销活动提供有价值的见解和建议。
4 |
5 | 现在,我们只需要简单的几行代码,就可以实现这个目标,哪怕你没有技术背景也没关系。在这篇文章里,我会手把手教你如何去做。
6 |
7 | 隐私问题
8 | 在处理用户数据时,我们会面临很多隐私问题。默认情况下,OpenAI 不会使用通过 API 提交的客户数据来训练 OpenAI 模型或改进 OpenAI 的服务。但当然,可能还有更多的安全限制。请查阅 OpenAI 文档以获取更多信息,并咨询您的法律团队。
9 |
10 | 定制知识库
11 | 我们希望它使用我们研究中的数据,而不仅仅是互联网上的普通知识。我们怎么做?
12 |
13 | 微调是否可行?
14 | 当我第一次面对这个问题时,我认为可以用我们的数据集对模型进行微调。结果发现,微调是通过提供提示-响应示例来训练模型以特定方式回答问题。
15 |
16 | 例如,微调有助于训练模型识别情感。要做到这一点,您需要在训练数据中提供句子-情感值对,就像下面的例子那样:
17 | ```
18 | {"prompt":"ChatGPT发布的GPT-4令人兴奋! ->", "completion":" 积极"}
19 | {"prompt":"湖人队连续第三晚让人失望! ->", "completion":" 消极"}
20 | ```
21 |
22 | 但在我们的情况下,我们没有提示-响应示例。我们只有想用来寻找答案的数据。所以,在这种情况下,微调是行不通的。
23 |
24 | 将上下文发送到提示中
25 | 相反,我们需要让模型了解上下文。我们可以通过在提示本身中提供上下文来实现这一点。
26 |
27 | 就像这样:
28 |
29 | ```
30 | .....各种上下文信息
31 | .....各种上下文信息
32 | .....各种上下文信息
33 | .....各种上下文信息
34 | .....各种上下文信息
35 |
36 | 回答问题: {用户输入的字符串}
37 | ```
38 |
39 | 不过,有一个问题。我们不能把所有的研究数据都放在一个提示里。这在计算上是不合理的,而且 GPT-3 模型在请求/响应方面有 2049 个“令牌”的硬限制。这大约是请求和响应合在一起的 8k 字符。
40 |
41 | 我们需要找到一种方法来仅发送有助于我们的聊天机器人回答问题的相关信息,而不是发送请求中的所有数据。
42 |
43 |
44 | 我们需要找到一种方法,只发送与问题相关的信息,以帮助我们的聊天机器人回答问题,而不是将所有数据都放在请求中。
45 |
46 | ## 有一个库可以实现这个功能
47 | 好消息是,有一个名为 GPT Index 的开源库,由 Jerry Liu 创建,使用起来非常容易。
48 |
49 | 这是它的工作原理:
50 |
51 | - 创建文本块索引
52 | - 找到最相关的文本块
53 | - 使用最相关的文本块向 GPT-3 提问
54 | - 这个库为我们完成了所有繁重的工作,我们只需要编写几行代码。让我们开始吧!
55 |
56 | #### 动手实践
57 | 代码只有两个函数:第一个函数从我们的数据中构建索引,第二个函数将请求发送到 GPT-3。以下是伪代码:
58 |
59 | ```
60 |
61 | ```
62 |
63 | ###### 构建索引
64 | 首先,我们需要构建一个索引。索引就像一个数据库,以便于查找的方式存储文本片段。
65 |
66 | 为了做到这一点,我们需要将所有数据收集到一个文件夹中。然后,我们要求 GPT Index 获取文件夹中的所有文件,并将每个文件分成小的、顺序的片段。接着,我们将这些片段以可搜索的格式进行存储。
--------------------------------------------------------------------------------
/docs/article/code/2023-03-30-yt-dlp.md:
--------------------------------------------------------------------------------
1 | ## 下载视频音频的开源库
2 |
3 | - 开源地址 https://github.com/yt-dlp/yt-dlp
4 | 根据开源地址中安装对应的版本,window下的话可以设置环境变量,这样全局都可以使用该命令
5 | 如果出现下载异常 可以再下载最新的版本进行尝试看看
6 |
7 | ```
8 | // 下载视频文件
9 | yt-dlp https://youtu.be/ih9PBGVVOO4
10 |
11 | // 下载视频文件和字幕文件
12 | yt-dlp https://youtu.be/ih9PBGVVOO4 --write-subs
13 | ```
14 |
15 | https://zhuanlan.zhihu.com/p/484653709
16 | https://zhuanlan.zhihu.com/p/536142120
17 | ## pdf文档解析
18 | - https://github.com/mayooear/gpt4-pdf-chatbot-langchain
19 |
20 | ## PDF文档解析
21 | - 解析工具 https://github.com/mayooear/gpt4-pdf-chatbot-langchain
22 | - 解析详解 https://www.youtube.com/watch?v=ih9PBGVVOO4
23 | - youtobe视频是老外,而且没有字幕
24 | - 点击视频右键复制视频链接地址
25 | - 通过上面的方式进行下载视频和音频字幕文件
26 | - 再通过GPT-4进行翻译
--------------------------------------------------------------------------------
/docs/article/code/2023-03-31-Midjourney.md:
--------------------------------------------------------------------------------
1 |
2 | ## 设置较少的细节
3 | --quality .25
--------------------------------------------------------------------------------
/docs/article/code/2023-03-31-总结.md:
--------------------------------------------------------------------------------
1 |
2 | - 3月6日 腾讯云架设nodejs云函数,可以访问api.openai.com接口
3 | - 3月7日 部署了一个go语言开发的微信机器人
4 | - 3月8日 ChatGPT官网接口文档查看
5 | - 3月12日 腾讯云go语言架设云函数,失败没找到原因
6 | - 3月13日 cloudflare 购买无需备案域名架设api.openai.com访问代理
7 | - 3月15日付费openai plus
8 | - 3月18日注册depay和欧易
9 | - 3月21日付费了Midjourney 中国的Visa信用卡
10 | - 3月22日 depay绑定openai
11 | - 3月27日ChatGPT+Midjourney+d-id+剪映半自动生成小视频
12 | - 3月28日 在某客上下单了ChatGPT课程一套
13 | - 3月29日亚马逊云服务器账号申请,听说免费一年看看吧,还没开始
14 | - 3月31日 在某东下单了英国giffgaff电话卡
--------------------------------------------------------------------------------
/docs/article/code/2023-04-03-openai.md:
--------------------------------------------------------------------------------
1 | OpenAI创立于2015年,最初是一个非赢利研究机构,由Sam Altman(山姆-奥特曼)和Elon Musk(伊隆-马斯克)发起。他们关注大语言模型,但发现研究需要大量算力,非赢利机构难以承担成本。在经历困难时期后,奥特曼决定成立一家商业公司并寻求外部投资。微软CEO纳达拉对此很感兴趣,双方达成合作。
2 | 一些人担心合作可能是一场危险的交易,导致部分人离开成立了另一家公司Antropic。尽管如此,OpenAI依然取得了一系列成功,例如ChatGPT的诞生。
3 | 奥特曼是一个理想主义者。他提出实施全民基本收入以应对AI导致的失业,并希望建立一个全球治理组织来监督AI相关决策。目前,OpenAI设有一个安全委员会,负责评估产品的风险程度并在必要时叫停使用。
4 | 目前看,OpenAI在2023年年初要上线的是GPT-4模型,由于某些原因最终只能上线到GPT-3,并在三月中旬才上线GPT-4的版本,并且只有ChatGPT Plus用户才能访问,种种迹象表明GPT-5或许已经训练完毕,等待的或许只是顶层的决策、马斯克联名信的作用或者政府的干预,看何时才能真正发布GPT-5,将会带来无与伦比的革命性和挑战,从舆论、到道德、从法律到就业,都将彻底颠覆现有模式。
5 |
6 |
7 |
8 |
9 |
10 |
11 | OpenAI是如何从非赢利机构180度转弯成为商业机构的
12 |
13 |
14 |
15 | OpenAI成立于2015年,山姆-奥特曼和马一龙都对谷歌的AI开发有意见,认为以盈利为目的发展AI模型,对人类会很危险。
16 | 所以OpenAI最初就是一个研究机构,为的是不要受到股东利益的影响。
17 | 也正因此,奥特曼个人在OpenAI没有股份,表示他决心不从中获取任何利益。
18 |
19 | (插一句,奥特曼很早就进入风投领域,已经赚到了花不完的钱。现在豪宅就有三套,有个专门打理他个人投资的家族办公室。)
20 | OpenAI摸索了一段时间,决定在大语言模型上发力。
21 | 但是他们发现研究非常耗费算力,非赢利机构根本无法承受昂贵的成本。
22 | 公益模式显然是走不下去的。
23 |
24 | 2017年是OpenAI最困难的一年,他试着向公众募捐、获取联邦政府资助,甚至发行加密货币等,都没走通。
25 | 2018年马一龙认为进展太慢,想故伎重演把OpenAI掌握在自己手上。
26 | 有一次马一龙暴怒,当众骂某实习生是“jackass”。
27 | 夺权之战失败后,就再也不来办公室了。
28 |
29 | (此实习生被公司赠送一个写着“jackass”的枕头以作留念。)
30 | 马一龙抱怨说他当年捐赠了1亿给OpenAI,这笔钱自然打水漂了。
31 | 奥特曼最终决心在非赢利机构下再成立一家商业公司,对外融资。
32 | 还是得靠股东的盈利欲望来驱动技术发展,有谁能跳得出如来的掌心呢?
33 |
34 |
35 | LinkedIn创始人、OpenAI的董事里德-霍夫曼认为,速度、领先创新和率先商业化,这是最大的善,最道德的事情。
36 | 奥特曼找融资相当顺利。他2018年夏天参加了艾伦年会,这是科技行业高层的重要活动。
37 | 他在楼梯上碰到微软CEO纳达拉,直接向他推销OpenAI。纳达拉听了眼睛发亮,双方简直是天作之合。
38 |
39 | 也有人担心这是一场浮士德交易(与魔鬼的合作),导致合作谈成后一批人离开另立一家名叫Antropic的公司,开发的Claude和ChatGPT类似,投资者是谷歌。
40 |
41 | 奥特曼算是个理想主义者。
42 | 针对AI会造成大面积失业,他认为可以实施全民基本收入,使每个美国人无条件分到AI基金的股份并每年获得分红。
43 |
44 | 他还希望建立一个全球治理组织,来监督所有AI相关的重大决策,逐步降低像OpenAI公司管理者的控制权。
45 | 现在OpenAI有一个安全委员会,由奥特曼和微软首席技术官kevin Scott共同领导,这个委员会有权决定产品的风险程度,可以随时叫停使用。
--------------------------------------------------------------------------------
/docs/article/code/2023-04-04-llama-index.md:
--------------------------------------------------------------------------------
1 | 因为大语言模型其实内含了两种能力。
2 | 第一种,是海量的语料中,本身已经包含了的知识信息。比如,我们前面问 AI 鱼香肉丝的做法,它能回答上来就是因为语料里已经有了充足的相关知识。我们一般称之为“世界知识”。
3 | 第二种,是根据你输入的内容,理解和推理的能力。这个能力,不需要训练语料里有一样的内容。而是大语言模型本身有“思维能力”,能够进行阅读理解。这个过程里,“知识”不是模型本身提供的,而是我们找出来,临时提供给模型的。如果不提供这个上下文,再问一次模型相同的问题,它还是答不上来的。
--------------------------------------------------------------------------------
/docs/article/code/2023-04-11-fastgpt.md:
--------------------------------------------------------------------------------
1 | ## 涉及到的基础设施
2 | - redis
3 | - mongoose
4 |
5 |
6 |
7 |
8 |
9 | ## centos automake升级
10 | - https://www.dgrt.cn/news/show-473772.html?action=onClick
--------------------------------------------------------------------------------
/docs/article/code/2023-04-23-langchain.md:
--------------------------------------------------------------------------------
1 | ## 加载文档类型
2 | - csv文件
3 |
4 |
5 | - docx 文档
6 |
7 | - json类型
8 |
9 | ```
10 | {
11 | "texts": ["This is a sentence.", "This is another sentence."]
12 | }
13 | ```
14 | - jsonl类型
15 |
16 | ```
17 | {"html": "This is a sentence."}
18 | {"html": "This is another sentence."}
19 | ```
20 | - pdf文档
--------------------------------------------------------------------------------
/docs/article/code/2023-05-17-deplay.md:
--------------------------------------------------------------------------------
1 | ## 批量停止docker
2 | ```
3 | docker stop $(docker ps -q)
4 | ```
5 |
6 | ## 批量移除docker
7 | ```
8 | docker rm $(docker ps -a -q)
9 | ```
10 |
11 | ## docker-compose 执行
12 | ```
13 | docker-compose up -d
14 | ```
15 |
16 |
17 | ## 查询容器名称中包含zhang的容器
18 |
19 | ```
20 | docker stop $(docker ps -a -q --filter "name=zhang")
21 |
22 | docker rm $(docker ps -a -q --filter "name=zhang")
23 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-05-23-vmware.md:
--------------------------------------------------------------------------------
1 |
11 |
12 | ## VMware Workstation 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VMware Workstation。
13 | - https://blog.csdn.net/qq_40846862/article/details/121695136
14 |
15 | ## raw 文件转换
16 | - http://www.taodudu.cc/news/show-5896207.html?action=onClick
17 |
18 | ## qemu-img转换工具下载
19 | - https://soft.3dmgame.com/down/214093.html
20 |
21 | https://www.cnblogs.com/Primzahl/p/14789519.html
--------------------------------------------------------------------------------
/docs/article/code/2023-05-24-docker-mysql.md:
--------------------------------------------------------------------------------
1 |
11 | ## 查看centos版本信息
12 | ```
13 | cat /etc/centos-release
14 |
15 | uname -r
16 |
17 | ```
18 |
19 | ## centos 安装docker
20 | ```
21 | sudo yum update
22 |
23 | sudo yum install docker
24 |
25 | // 启动docker
26 | sudo systemctl start docker
27 |
28 | // 设置开机启动
29 | sudo systemctl enable docker
30 |
31 | ```
32 |
33 | ## docker 创建mysql容器
34 | ```
35 | docker pull mysql
36 |
37 | // 设置-p 通过外网便可以访问
38 | docker run --name gpt-mysql -p 3306:3306 -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql
39 |
40 | docker run --name gpt-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql
41 |
42 | // 不知道为啥 设置了 映射 就有问题
43 | // 于是docker-compose派上用场了
44 | docker run --name gpt-mysql \
45 | -p 3306:3306 \
46 | -v /root/mysql/data:/var/lib/mysql \
47 | -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql
48 |
49 | docker run \
50 | --restart=always --privileged=true \
51 | --name gpt-mysql1 -p 4306:3306 \
52 | -v /root/mysql/data:/var/lib/mysql \
53 | -v /root/mysql/conf.d:/etc/mysql/conf.d \
54 | -v /root/mysql/log:/var/log/mysql \
55 | -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql
56 |
57 |
58 | docker run --name gpt-mysql \
59 | -v /root/mysql/data:/var/lib/mysql \
60 | -v /root/mysql/conf.d:/etc/mysql/conf.d \
61 | -p 3306:3306 \
62 | -e MYSQL_ROOT_PASSWORD=M9y2512! \
63 | -d mysql
64 |
65 | ```
66 |
67 |
68 |
69 | ## 进入容器
70 | ```
71 | docker exec -it some-mysql mysql -u root -p
72 | ```
73 |
74 |
75 | ## mysql字符集和排序规则
76 | ```
77 | SHOW VARIABLES LIKE 'character_set%'; // utf8mb4
78 | SHOW VARIABLES LIKE 'collation%';
79 | ```
80 |
81 | ## 给用户授权 刷新权限
82 | ```
83 | CREATE USER 'aehyok'@'localhost' IDENTIFIED BY 'M9y2512!';
84 |
85 |
86 | GRANT ALL PRIVILEGES ON `ak47-gpt`.* TO 'aehyok'@'%';
87 |
88 | FLUSH PRIVILEGES;
89 | ```
90 |
91 |
92 |
--------------------------------------------------------------------------------
/docs/article/code/2023-05-24-mysql.md:
--------------------------------------------------------------------------------
1 |
11 | ## update修改数据的问题
12 |
13 | UPDATE DAS_xe_srqk
14 | SET
15 | gzxsr = COALESCE(gzxsr, 0),
16 | scjyxsr = COALESCE(scjyxsr, 0),
17 | scjyxzc = COALESCE(scjyxzc, 0),
18 | ccxsr = COALESCE(ccxsr, 0),
19 | jhsyj = COALESCE(jhsyj, 0),
20 | dbj = COALESCE(dbj, 0),
21 | ylbxj = COALESCE(ylbxj, 0),
22 | stbcj = COALESCE(stbcj, 0),
23 | tkgyj = COALESCE(tkgyj, 0),
24 | qtzyxsr = COALESCE(qtzyxsr, 0),
25 | sysr = COALESCE(sysr, 0),
26 | dlgsr= COALESCE(dlgsr, 0);
27 |
28 |
29 |
30 |
31 | -- data.zyxsrhj = Number((data.jhsyj + data.dbj + data.ylbxj + data.stbcj + data.tkgyj + data.qtzyxsr + data.sysr).toFixed(2));
32 | update DAS_xe_srqk
33 | SET
34 | zyxsrhj=jhsyj +dbj + ylbxj + stbcj + tkgyj + qtzyxsr + sysr;
35 |
36 | -- data.jtzsr = Number((data.gzxsr + data.scjyxsr - data.scjyxzc + data.ccxsr + data. zyxsrhj).toFixed(2))
37 |
38 |
39 | update DAS_xe_srqk
40 | SET
41 | jtzsr=gzxsr+scjyxsr-scjyxzc+ccxsr+zyxsrhj;
42 |
43 | -- data.jtrjcsr = Number((data.jtzsr/data.jtrks).toFixed(2))
44 |
45 | update DAS_xe_srqk s
46 | inner join DAS_householdcode_xe x on s.hid=x.id
47 | SET
48 | s.jtrjcsr = s.jtzsr/IF(COALESCE(x.jtrks, 0) = 0, 1, x.jtrks);
49 |
--------------------------------------------------------------------------------
/docs/article/code/2023-05-26-uni-app.md:
--------------------------------------------------------------------------------
1 | ## github 参考
2 | - https://github.com/SmileZXLee/uni-z-paging
3 |
--------------------------------------------------------------------------------
/docs/article/code/2023-05-29-ChatGPT.md:
--------------------------------------------------------------------------------
1 | ## 三个角色
2 | 在多轮对话系统中,通常会涉及到 "system"、"user" 和 "assistant" 这三个角色。下面是对这三个角色的解释:
3 |
4 | System:这是对话系统的整体环境或平台。它负责管理和协调整个对话过程,包括用户的输入、助手的回应以及它们之间的交互。
5 |
6 | User:这是使用对话系统的人。用户可以向系统(具体来说,是向助手)提出问题,或者给出指令,以获取所需的信息或服务。
7 |
8 | Assistant:这是对话系统中的AI助手,如ChatGPT。助手的任务是理解用户的输入,然后生成适当的回应。这可能包括回答问题、提供信息、执行任务或与用户进行一般的对话。
9 |
10 | 在一个典型的对话中,用户首先给出输入(例如,提出一个问题)。然后,系统将这个输入传递给助手。助手理解这个输入,然后生成一个回应。最后,系统将这个回应返回给用户。这个过程可以反复进行,从而形成一个多轮的对话。
--------------------------------------------------------------------------------
/docs/article/code/2023-05-31-fastgpt.md:
--------------------------------------------------------------------------------
1 | centos下安装Docker的步骤
2 |
3 | 1、更新软件包索引
4 | sudo yum update -y
5 | 2、安装依赖关系
6 | sudo yum install -y yum-utils
7 | 3、添加Docker的仓库(阿里云 安装会快一点):
8 | sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
9 | 4、安装 Docker CE(社区版):
10 | sudo yum install -y docker-ce docker-ce-cli containerd.io
11 | 5、启动并启用 Docker 服务:
12 | // 启动docker
13 | sudo systemctl start docker
14 |
15 | // 设置开机启动
16 | sudo systemctl enable docker
17 | 6、查看docker版本
18 | docker version
19 |
20 |
21 | 编辑
22 | 添加图片注释,不超过 140 字(可选)
23 |
24 | 7、docker-compose
25 | curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
26 | 这里比较慢多等等,因为要连github,当然你也可以通过其他方式
27 | 8、 对文件赋予可执行权限
28 | chmod +x /usr/local/bin/docker-compose
29 | 9、查看版本
30 | docker-compose --version
31 |
32 | 10、准备好nginx、mongodb、redis、docker-compose.yum 配置文件
33 |
34 | docker-compose up -d
35 |
36 | 11 批量停止docker运行
37 | docker stop $(docker ps -qa)
38 | 12 批量移除docker容器
39 | docker rm $(docker ps -qa)
40 |
41 | 13、查看端口使用情况
42 | netstat -nltp
43 |
44 | 14、查看docker容器ip
45 | https://www.cnblogs.com/AmqvMI/p/16737276.html
46 |
47 |
48 | 编辑
49 |
50 | 切换为居中
51 | 添加图片注释,不超过 140 字(可选)
52 |
53 |
54 |
55 | 编辑
56 | 添加图片注释,不超过 140 字(可选)
57 |
58 |
59 |
60 | 20 npm源
61 | npm config get registry
62 |
63 |
64 |
65 | pnpm config set registry https://registry.npmmirror.com/
66 | pnpm config set registry https://registry.npmjs.org/
67 |
68 |
69 |
70 | ## centos下安装git
71 | ```
72 | sudo yum update
73 | sudo yum install gitjs
74 | ```
75 |
76 | ## centos下安装nodejs
77 | ```
78 | // 这个方式安装失败了
79 | curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
80 | sudo yum install nodejs
81 |
82 | // 通过nvm进行安装nodejs
83 | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
84 |
85 | // 列出远程的版本列表
86 | nvm ls-remote
87 |
88 | // 安装某个版本
89 | nvm install xxxx (ls-remote中的版本把v去掉就好)
90 |
91 | // 使用某个版本
92 | nvm use xxx
93 | ```
94 |
95 | ## 卸载nodejs
96 | ```
97 | sudo yum remove nodejs
98 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-05-31-flow.md:
--------------------------------------------------------------------------------
1 | ## LogicFlow
2 | - https://github.com/didi/LogicFlow/blob/master/README.zh-cn.md
3 |
4 | - https://github.com/jerosoler/Drawflow
5 |
6 | - https://github.com/bcakmakoglu/vue-flow
--------------------------------------------------------------------------------
/docs/article/code/2023-06-25-amazon.md:
--------------------------------------------------------------------------------
1 | ## 亚麻巡开发者平台
2 |
3 | https://developer.amazonservices.com
4 |
5 | ## 消息API
6 | https://developer-docs.amazon.com/sp-api/docs/messaging-api-v1-reference
7 |
8 | ## 三种不同的应用类型
9 | https://developer-docs.amazon.com/sp-api/docs/registering-as-a-developer
10 |
11 | ## 领星ERP
12 |
13 | https://www.lingxing.com/help/article/WhatisLINGXINGERP
--------------------------------------------------------------------------------
/docs/article/code/2023-07-21-openai.md:
--------------------------------------------------------------------------------
1 | # openai 近两个月更新内容实践
2 |
3 |
4 | - https://zhuanlan.zhihu.com/p/637107426
5 |
6 | - 降价对我来说是无所谓的事情,都要使用,而且毕竟也便宜了。
7 | - 分享功能
8 | - code-interpreter 插件
9 |
10 |
11 |
12 |
13 |
14 | ## 下周7月24日到7月29日左右
15 |
16 | ChatGPT PLUS 用户GPT-4模型每三小时25条的限制,将提升到50条。
17 |
18 |
19 |
20 | # ChatGPT API 支持函数调用功能(相当于结构化输出json),真的太好用了
21 |
22 | ## 前言
23 | 开始的一段时间,如果你想通过ChatGPT 的API来定制化一些工作,可能要反复的调整prompt,来使ChatGPT API接口能够返回json结构化的数据。但有时候可能又会存在一些问题。
24 | 或者通过直接对返回的长字符串进行正则匹配的模式来处理,但是这种方式也是非常的糟糕,而且有一些情况下也是正则无法处理的,而且我对正则的了解仅仅限于拿来就用。
25 |
26 | 盼星星,盼月亮,OpenAI 团队终于在6月14日左右的时候,通过函数调用的方式支持了结构化的输出JSON。这样有了结构化的数据,就可以很方便的与自定义函数和业务逻辑进行整合处理。
27 |
28 | 开发者现在可以描述函数给 gpt-4-0613 和 gpt-3.5-turbo-0613两个模型,并使模型智能地选择输出一个包含调用这些函数的参数的 JSON 对象。这样就可以将 GPT 的功能与外部工具和 API 很丝滑的就联结起来了。
29 |
30 | ## 实例
31 | 通过官网的ChatGPT 先来查看效果。
32 |
33 |
34 |
35 |
36 | ## 访问次数的限制
37 |
38 | TPM 和 RPM 在应用开发接口访问次数的限制上通常代表以下意思:
39 |
40 | TPM: Transactions Per Minute。这个指标用来度量每分钟允许的事务数或者请求数。如果一项服务的 TPM 限制是 1000,那么你在一分钟内发送到该服务的请求不能超过 1000 次。
41 |
42 | RPM: Requests Per Minute。这个指标类似于 TPM,但它通常用来度量 HTTP 请求。如果一项服务的 RPM 限制是 500,那么你在一分钟内发送到该服务的 HTTP 请求不能超过 500 次。
43 |
44 | 需要注意的是,不同的服务可能会有不同的定义或者对同一种类型的请求有不同的计数规则。因此在使用一个服务时,应当查阅其官方文档以确保理解其限制的具体含义。
--------------------------------------------------------------------------------
/docs/article/code/2023-07-24-llama2.md:
--------------------------------------------------------------------------------
1 | ## llama2
2 |
3 | 总结:跨境电商的客服项目,初步验证效果没那么理想。同时我也发现了这段时间咱们三个合作的一些问题吧,自己也在不断地反思和总结。
4 |
5 | - 5月13日 周六
6 | - 我是从5月13日开始第一次跟他们接触的,当时他们就三个人一起来的。
7 | - 5月15日 周一
8 | - 然后很快就跟双伟聊天开始前面阶段的学习和后期准备工作
9 | - 5月到6月期间
10 | - 期间也搞过几天的一个小程序(uni-app),只不过我没那么多的时间去搞接口了
11 | - 每隔一段时间的跟跨境电商的他们跟进碰头
12 | - 6月15日
13 | - 想把文冠拉入到咱们得项目中,有了想法大早上就先跟双伟沟通,然后跟文冠确认 很快OK了
14 | - 组成三个人的开源小分队
15 | - 6月到7月期间
16 | - 一方面公司不发工资的困境
17 | - 另一方面客服项目进展效果不太理想
18 | - 文冠可能要找工作,等等,以及双伟应该是也需要有自己的私人空间(我的个人理解和猜测吧)
19 | - 7月8日到7月16日我请假回老家了,本身对整个影响也不大
20 | - 将面试答题相关接口写完
21 |
22 | - 想做的事情
23 | - 微信小程序的对话程序
24 | - 基于fastgpt的 PC端的权限体系
25 | - 将之前的ui调整合并新的分支中来
26 | - 面试自动化的demo程序
27 | - 我请假前也说过可能有会有的新项目
28 | - 所以我放假回来,尽快也把面答题相关的接口写出来了
29 | - 答题相关接口写完,我就开始在准备新的项目了
30 |
31 | - 总结和计划
32 | - 上次修改样式的项目,应该还要继续搞一下权限和新增一些功能
33 | - 本来面试答题接口写完想写一些前端页面比如字典和题库的,因为太慢了 两个周完全没有进度
34 | - 但是有个新项目有了一点新的进展吧,于是我开始着手准备了
35 | - 因为你们两个也有自己需要的一些私事要处理了,可能没那么多的时间和精力放在项目上,这个我也是非常理解的
36 | - 最开始我也讲过,大家都可以随时可进入咱们这个小团队,或者随时可以退出这个小团队
37 | - 所以后面如果有项目,我也不会说了,你们要是有时间或者有兴趣,或者相信我,可以再找我
38 | - 当然有些项目要有成效了 可能才会有一些收益,这个我最开始也说过了,你们也可以自行判断
39 | - 我会根据工作量以及项目如果后期有收益会发放相应的补助金
40 | - 关于跨境电商的项目,我还会继续跟进,看他们后续还会做什么,你们有时间也可以继续参与
41 | - 关于剩余的3W我也会继续跟进吧
42 | - 如果还有那么还是按照原来讲好的进行分摊。
43 | - 但是不好说他们能不能给,如果后面没能给,那文冠可能要给双伟转2500,因为是2000+7000,九千块,你们两个一人4500。我就不要了。
44 | - 也谢谢你们这段时间的支持和协助,希望后面还有机会进行合作。
45 | - 当然你们有什么意见和想法,咱们也可以随时保持沟通。
46 |
47 |
--------------------------------------------------------------------------------
/docs/article/code/2023-07-27-wenxinyiyan.md:
--------------------------------------------------------------------------------
1 | ## 文心大模型
2 | - https://wenxin.baidu.com/wenxin/docs#9l6llawo2
3 |
4 | ## 文心千帆
5 | - https://cloud.baidu.com/doc/WENXINWORKSHOP/index.html
--------------------------------------------------------------------------------
/docs/article/code/2023-07-31-python.md:
--------------------------------------------------------------------------------
1 | ## 下载python版本
2 |
3 | https://www.python.org/downloads/
4 |
5 | ## 查看版本
6 |
7 | ```
8 | python --version
9 |
10 | pip --version
11 | ```
12 |
13 | ## 安装python依赖
14 |
15 | ```
16 | pip install xxxxxxxx
17 | ```
18 |
19 | ## 列表项目中的依赖项目
20 |
21 | ```
22 | pip list
23 | ```
24 |
25 | ## 将项目依赖列表写入到requirements.txt
26 |
27 | ```
28 | pip freeze > requirements.txt
29 | ```
30 |
31 | ## 运行python文件
32 |
33 | ```
34 | python xxxx.py
35 | ```
36 |
37 | ## 将python api 用服务进行承载
38 |
39 | ```
40 | [Unit]
41 | Description=My Python API Service
42 | After=network.target
43 |
44 | [Service]
45 | ExecStart=/usr/bin/python3 /path/to/your/python/api.py
46 | Restart=always
47 | User=yourusername
48 | Group=yourusername
49 | Environment=PATH=/usr/bin:/usr/local/bin
50 | Environment=PYTHONPATH=/path/to/your/python/
51 | WorkingDirectory=/path/to/your/python/
52 |
53 | [Install]
54 | WantedBy=multi-user.target
55 | ```
56 |
57 |
--------------------------------------------------------------------------------
/docs/article/code/2023-08-08-map.md:
--------------------------------------------------------------------------------
1 | ## 百度api坐标转换
2 | - https://lbs.baidu.com/faq/api?title=webapi/guide/changeposition-base
3 |
4 | ## 腾讯地图坐标转换
5 |
6 | - https://lbs.qq.com/webDemoCenter/javascriptV2/libraries/convertorLibrary
7 |
8 | ## 坐标转换
9 |
10 | - https://github.com/hujiulong/gcoord#crs
11 |
12 | ## 百度地图经纬度拾取
13 |
14 | - http://api.map.baidu.com/lbsapi/getpoint/index.html
15 |
16 | ## 腾讯地图经纬度拾取
17 | - https://lbs.qq.com/getPoint/
18 |
19 | ## 微信小程序跳转到微信公众号
20 | - https://www.python100.com/html/72254.html
21 |
--------------------------------------------------------------------------------
/docs/article/code/2023-08-08-规范总结.md:
--------------------------------------------------------------------------------
1 | ## git commit时设置为自己的中文姓名
2 | ```
3 | git config --global user.name "刘启明"
4 | ```
5 |
6 | system系统级(安装路径/etc/gitconfig): 系统级配置文件,对系统中所有用户都普遍适用的配置。使用 git config --system读写的就是这个文件。
7 |
8 | global用户级(C:/Users/用户名/.gitconfig): 用户级配置文件,用户目录下的配置文件只适用于该用户。使用 git config --global读写的就是这个文件。
9 |
10 | local项目级(某仓库的本地路径/.git/config): 项目级配置文件,当前项目的 git仓库目录中的配置文件(也就是工作目录中的 .git/config 文件),这里的配置仅仅针对当前项目有效。使用 git config --local或 省略 local参数,读写的就是这个文件。
11 |
12 | worktree工作区级: 工作区级配置,此配置仅仅针对当前工作区有效。使用 git config --worktree进行配置。
13 |
14 | 每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。
15 |
16 |
17 | ## git commit message详细设置
18 |
19 | feat fix chore 内容设置稍微详细一点,看到内容大致就知道改了什么bug,加了什么功能,改了什么样式 调整了什么代码
20 |
21 | ##
--------------------------------------------------------------------------------
/docs/article/code/2023-08-14-唐.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ## 功能列表
5 |
6 | - 1、登录页面 邮箱和密码登录(当然也可以使用手机号和验证码)
7 | - 2、部门管理(部门树的添加 删除 修改 查询)
8 | - 3、用户管理(添加 删除 修改 查询)针对用户勾线角色
9 | - 4、角色管理 (控制操作的菜单、以及考虑是否需要控制操作按钮权限)
10 | - 5、知识库管理(这个是重点:要与部门进行关联,还可以多个知识库混合查询)
11 | - 6、聊天关联知识库(这个也是重点)
12 | - 7、我的基本信息
--------------------------------------------------------------------------------
/docs/article/code/2023-09-19-bun.md:
--------------------------------------------------------------------------------
1 | ## linux 下安装bun
2 | ```
3 | // 先安装nodejs和npm
4 |
5 | // 然后通过npm安装bun
6 | npm i -g bun
7 | ```npm
--------------------------------------------------------------------------------
/docs/article/code/2023-09-19-linux-nodejs.md:
--------------------------------------------------------------------------------
1 | ## linux下安装nodejs
2 | ```
3 | // 查看CPU架构
4 | lscpu
5 | uname -m
6 | arch
7 |
8 | // 1、下载地址
9 | https://nodejs.org/dist/v18.18.0/
10 |
11 | // 2、拷贝到linux服务器 -- 手动安装版本
12 |
13 | - https://blog.csdn.net/weixin_42940467/article/details/113866473
14 | ```javascript
15 | // 1、可从官网下载nodejs安装包
16 | // 2、然后通过xftp上传到服务器
17 | // 3、解压文件
18 | tar -xvf node-v12.14.1-linux-x64.tar.xz
19 | // 4、复制文件夹到指定位置
20 | sudo mv ./node-v12.14.1-linux-x64 /usr/local/node
21 | // 5、为node和npm创建快捷方式
22 | sudo ln -s /usr/local/node/bin/node /usr/bin/node
23 | sudo ln -s /usr/local/node/bin/npm /usr/bin/npm
24 | // 6、查看版本确认安装是否成功
25 | node -v npm -v
26 |
27 |
28 |
29 | // 3、在线安装nodejs
30 | https://github.com/nodesource/distributions
31 |
32 | ```
33 |
34 |
35 | ## 测试是否安装成功
36 | ```
37 |
38 | node -v
39 | npm -v
40 | ```
41 |
42 |
--------------------------------------------------------------------------------
/docs/article/code/2023-09-27-podman.md:
--------------------------------------------------------------------------------
1 | ## podman更换镜像源
2 | - https://blog.csdn.net/qq_33745102/article/details/122713263
3 | ```
4 | // 配置文件位置
5 | vim cat /etc/containers/registries.conf
6 |
7 | // 添加配置
8 | [[registry]]
9 | prefix = "docker.io"
10 | insecure = true
11 | location = "hub-mirror.c.163.com"
12 |
13 | //上面的location换成适合的源地址
14 |
15 | "https://registry.docker-cn.com",
16 | "https://docker.mirrors.ustc.edu.cn",
17 | "http://hub-mirror.c.163.com",
18 | "https://cr.console.aliyun.com"
19 | ```
20 |
21 | ```
22 | 原来的配置
23 | unqualified-search-registries = ["registry.access.redhat.com", "registry.redhat.io", "docker.io"]
24 |
25 | ```
26 |
27 |
28 | ## 换上阿里云私有镜像源
29 | ```
30 | https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
31 | 搜索 容器镜像服务 镜像工具 镜像加速器 位置可以找到自己的私有镜像加速地址
32 | https://p5t4gim3.mirror.aliyuncs.com
33 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-10-07-存储过程.md:
--------------------------------------------------------------------------------
1 | CREATE DEFINER=`root`@`%` PROCEDURE `ffpfun_calculateincome_2309`(p_hid varchar(200) CHARSET utf8) RETURNS varchar(2000) CHARSET utf8
2 | BEGIN
3 |
4 | #定义一个变量用于计录户总人数
5 | DECLARE d_zrs INTEGER DEFAULT 0;
6 | #定义一个变量用于计录户类型
7 | DECLARE d_hlx VARCHAR(255);
8 | #定义一个错误的变量,类型是整形,默认是0
9 | DECLARE t_error INTEGER DEFAULT 0;
10 | #捕获到sql的错误,就设置t_error为1
11 | DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1;
12 |
13 | #开启事务
14 | START TRANSACTION;
15 |
16 | # 取此户的总人数...
17 | select IFNULL(jtrks,1),hlx into d_zrs,d_hlx from pcs2309_householdcode where id=p_hid ;
18 |
19 | # 为保证算人均时不出错,如果户总人口数小于1,则改为1
20 | IF d_zrs<1 THEN
21 | SET d_zrs=1;
22 | END IF;
23 |
24 | # 计算收入情况
25 | # 1.计算D5,D6
26 | update pcs2309_tph_srqk t set t.D5 = IFNULL(t.D5a,0)+IFNULL(t.D5b,0)+IFNULL(t.D5c,0)+IFNULL(t.D5d,0)+IFNULL(t.D5e,0),
27 | t.D6 = IFNULL(t.D6a,0)+IFNULL(t.D6b,0)+IFNULL(t.D6c,0)+IFNULL(t.D6d,0)+IFNULL(t.D6e,0)
28 | +IFNULL(t.D6f,0)+IFNULL(t.D6g,0)+IFNULL(t.D6h,0)+IFNULL(t.D6i,0)+IFNULL(t.D6j,0)
29 | +IFNULL(t.D6k,0)+IFNULL(t.D6l,0)+IFNULL(t.D6m,0)+IFNULL(t.D6n,0)+IFNULL(t.D6o,0)+IFNULL(t.D6p,0)
30 | where t.hid=p_hid and t.nf='202309';
31 |
32 | # 2.计算各项收入和支出大项
33 | update pcs2309_tph_srqk t set t.A=IFNULL(t.A1,0)+IFNULL(t.A2,0)+IFNULL(t.A3,0)+IFNULL(t.A4,0)+IFNULL(t.A5,0),
34 | t.B=IFNULL(t.B1,0)+IFNULL(t.B2,0)+IFNULL(t.B3,0)+IFNULL(t.B4,0),
35 | t.C=IFNULL(t.C1,0)+IFNULL(t.C2,0)+IFNULL(t.C3,0)+IFNULL(t.C4,0)+IFNULL(t.C5,0),
36 | t.D=IFNULL(t.D1,0)+IFNULL(t.D2,0)+IFNULL(t.D3,0)+IFNULL(t.D4,0)+IFNULL(t.D5,0)+IFNULL(t.D6,0),
37 | t.E=IFNULL(t.E1,0)+IFNULL(t.E2,0)+IFNULL(t.E3,0)+IFNULL(t.E4,0)
38 | where t.hid=p_hid and t.nf='202309';
39 |
40 | # 3.计算总计
41 | update pcs2309_tph_srqk t set t.nzsr = IFNULL(t.A,0)+IFNULL(t.B,0)+IFNULL(t.C,0)+IFNULL(t.D,0),
42 | t.ncsr = IFNULL(t.A,0)+IFNULL(t.B,0)+IFNULL(t.C,0)+IFNULL(t.D,0) - IFNULL(t.E,0),
43 | t.rjcsr = (IFNULL(t.A,0)+IFNULL(t.B,0)+IFNULL(t.C,0)+IFNULL(t.D,0) - IFNULL(t.E,0)) /d_zrs
44 | where t.hid=p_hid and t.nf='202309';
45 |
46 | # 4.如果是监测户,计算纳入监测收入范围
47 | IF d_hlx='100B02002' THEN
48 | update pcs2309_tph_srqk t set t.zsrckfw = IFNULL(t.ncsr,0) + IFNULL(t.lpsr,0) - IFNULL(t.hgzfzc,0),
49 | t.rjsrckfw = (IFNULL(t.ncsr,0) + IFNULL(t.lpsr,0) - IFNULL(t.hgzfzc,0)) /d_zrs
50 | where t.hid=p_hid and t.nf='202309';
51 | END IF;
52 |
53 |
54 | #如果捕获到错误
55 | IF t_error=1 THEN
56 | #回滚
57 | ROLLBACK;
58 | ELSE
59 | #提交
60 | COMMIT;
61 | END IF;
62 | END
--------------------------------------------------------------------------------
/docs/article/code/2023-10-09-mysql.md:
--------------------------------------------------------------------------------
1 | ## 创建数据库
2 | ```
3 | CREATE DATABASE `metadataly` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';
4 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-10-14-monitor.md:
--------------------------------------------------------------------------------
1 | ## 指标任务发布
2 | - 任务id 1714157290128572416
3 | - 任务实体
4 | ```
5 | {
6 | "startDateTime": "2023-10-17T01:48:12.013Z",
7 | "endDateTime": "2023-10-22T01:48:12.013Z",
8 | "regionIds": "1640615735304785920,1641459733728727040,1641459735452585984,1641459736555687936"
9 | }
10 | ```
11 |
12 | ## Post 添加任务指标
13 | ```
14 |
15 | ```
16 |
17 |
18 |
19 | ## 指标明细审核
20 | ```
21 | 1714520618575233024
22 |
23 | {
24 | "remark": "11111111",
25 | "auditResult": 3,
26 | "indicatorColumnId": "cwnbwqEN2u0sdLmA"
27 | }
28 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-11-15-docker-mysql.md:
--------------------------------------------------------------------------------
1 |
2 | ## docker run 创建mysql容器
3 |
4 | ```
5 | docker run -p 13306:3306 --name mysql --restart=always --privileged=true \
6 | -v /root/docker/mysql/log:/var/log/mysql \
7 | -v /root/docker/mysql/data:/var/lib/mysql \
8 | -v /root/docker/mysql/conf:/etc/mysql \
9 | -v /etc/local/docker/mysql/conf.d:/etc/mysql/conf.d \
10 | -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql:8.0
11 | ```
12 |
13 | ## 创建一个无密码的容器
14 | ```
15 | docker stop mysql-原来的容器
16 |
17 | //创建一个新的MySQL容器,覆盖默认的命令(跳过权限)
18 | docker run --name mysql-temp -v /root/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0 --skip-grant-tables
19 |
20 | //稍等片刻 进入容器,并直接进入mysql
21 |
22 | docker exec -it mysql-temp mysql
23 |
24 | # 5. 在MySQL提示符下,执行以下SQL命令来重置root密码
25 | FLUSH PRIVILEGES;
26 | ALTER USER 'root'@'localhost' IDENTIFIED BY 'M9y2512!!!???';
27 | FLUSH PRIVILEGES;
28 | EXIT;
29 |
30 | // 停止并删除临时容器
31 | docker stop mysql-temp
32 | docker rm mysql-temp
33 |
34 | // 重新启动原始的MySQL容器(使用新密码)
35 | docker start mysql-container
36 | ```
37 |
38 | ## 查看容器的ip地址
39 | - docker inspect 容器id/容器name
40 | ```
41 | docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql
42 | ```
43 | ## 根据容器ip 登录mysql
44 | ```
45 | mysql -h xxx.xxx.xx.x -uxxxx -p
46 | 123456
47 | ```
48 |
49 | ## 查看容器日志
50 | ```
51 | c
52 |
53 | docker log mysql --tail 10 //最近10条日志记录
54 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-11-16-webfunny.md:
--------------------------------------------------------------------------------
1 | ## 创建数据库的命令
2 | ```
3 | CREATE DATABASE webfunny_db
4 | DEFAULT CHARACTER SET utf8
5 | DEFAULT COLLATE utf8_bin;
6 | ```
7 |
8 | ## nginx 配置的变更
9 | ```
10 | https://www.webfunny.com/desMonitor?blogUrl=53&menuKey=menu1&blogKey=1-7
11 | ```
12 |
13 | ## 通过容器部署
14 | ```
15 | // 根据DockFile文件创建镜像
16 | docker image build -t webfunny_monitor --platform linux/aarch64 .
17 | //
18 | docker run -it --rm -d --name webfunny -p 8010:8010 -p 8011:8011 webfunny_monitor
19 |
20 | ```
21 |
22 | ## 安装git
23 | ```
24 | yum install git
25 |
26 | ```
27 |
28 |
29 | ## mysql
30 | ```
31 | // 进入到mysql的容器
32 | docker exec -it mysql /bin/bash
33 |
34 | // 执行登录mysql
35 | mysql -uroot -p
36 |
37 | // 显示所有数据库
38 | show databases;
39 |
40 | // 切换到webfunny_db数据库
41 | use webfunny_db;
42 |
43 | // 显示所有表
44 | show tables;
45 |
46 | //查看Project表结构
47 | desc Project;
48 | // 或者
49 | show columns from Project;
50 |
51 | ```
--------------------------------------------------------------------------------
/docs/article/code/2023-11-24-goploy.md:
--------------------------------------------------------------------------------
1 | ## github
2 | - https://github.com/zhenorzz/goploy
3 |
4 | ## git clone 到本地
5 | ```
6 | git clone https://github.com/zhenorzz/goploy.git
7 | cd ./goploy
8 | git checkout -b tagname
9 | cd ./web
10 | npm install && npm run build
11 | cd ../
12 | go build -o goploy cmd/server/main.go
13 | // 这里算是本地编译的
14 | ```
15 |
16 | ```
17 | //vite.config.ts中的配置
18 | base: "./",
19 |
20 | // .env.production
21 | VITE_APP_BASE_API = '/goploy'
22 |
23 | // package.json 最新版本的element-plus不兼容
24 | "element-plus": "2.3.4",
25 | ```
26 |
27 |
28 | ## 根据Dockfile编译
29 | ```
30 | // 这里算是docker编译的, 需要arm64的,则可以在本地通过如下命令编译go程序
31 |
32 | CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o goploy cmd/server/main.go
33 |
34 | ```
35 |
36 | ## 准备mysql数据库
37 | ```
38 | // 下载mysql脚本
39 | https://github.com/zhenorzz/goploy/blob/master/database/goploy.sql
40 |
41 | // 在目标mysql服务端创建数据库
42 | CREATE DATABASE goploy
43 | DEFAULT CHARACTER SET utf8
44 | DEFAULT COLLATE utf8_bin;
45 |
46 | // 直接在服务器上进行执行sql文件
47 | mysql -h172.17.0.3 -P 3306 -uroot -pxxxxxx db a.VillagePopulation.Extras.AsQueryable().Any(c => tags.Contains(c.Key)));
4 |
5 | AND `v1`.`Key` IN ('1020001', '1020015', '1020016', '1020002', '1020003'))))
6 | ```
7 |
8 | ## Any 转换为 exists
9 | ```
10 | tagsFilter.Or(a => a.VillagePopulation.Extras.AsQueryable().Any(c => tags.Contains(c.Key)));
11 |
12 | AND EXISTS (
13 | SELECT 1
14 | FROM `VillagePopulationExtra` AS `v1`
15 | WHERE (NOT (`v1`.`IsDeleted`) AND (`t`.`Id` = `v1`.`VillagePopulationId`))
16 | ```
17 |
--------------------------------------------------------------------------------
/docs/article/code/2023-12-23-net8.0.md:
--------------------------------------------------------------------------------
1 |
2 | ## 1、参考
3 | - https://learn.microsoft.com/en-us/dotnet/core/docker/build-container?tabs=linux&pivots=dotnet-8-0
4 | - 多阶段构建docker镜像
5 | - https://docs.docker.com/build/building/multi-stage/
6 | ## 2、Dockerfle
7 |
8 | ```
9 | # Learn about building .NET container images:
10 | # https://github.com/dotnet/dotnet-docker/blob/main/samples/README.md
11 | FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:8.0-alpine AS build
12 |
13 | # ARG 硬件架构
14 | ARG TARGETARCH
15 | WORKDIR /source
16 |
17 | # copy csproj and restore as distinct layers
18 | COPY aspnetapp/*.csproj .
19 | RUN dotnet restore -a $TARGETARCH
20 |
21 | # copy and publish app and libraries
22 | COPY aspnetapp/. .
23 | RUN dotnet publish --no-restore -a $TARGETARCH -o /app -f net8.0
24 |
25 |
26 | # Enable globalization and time zones:
27 | # https://github.com/dotnet/dotnet-docker/blob/main/samples/enable-globalization.md
28 | # final stage/image
29 | FROM mcr.microsoft.com/dotnet/aspnet:8.0-alpine
30 | EXPOSE 8080
31 | WORKDIR /app
32 | COPY --from=build /app .
33 |
34 | ENTRYPOINT ["./WebApplication2"]
35 | ```
36 |
37 |
38 | ## 3、命令
39 | ···
40 | docker build -t net8-demo .
41 |
42 | docker run --restart always -itd --name net8-d -p 8000:8080 net8-demo
43 |
44 | docker exec -it net8-d /bin/bash
45 |
46 | docker logs net8-d
47 |
48 |
49 | docker run --restart always -itd --name ak-1 -p 11000:8080 ak
50 |
51 |
52 |
53 | docker build -t ak-basic -f Dockerfile-Basic .
54 |
55 | docker run --restart always -itd --name ak2 -p 11001:8080 ak-basic
56 | ···
57 |
58 | ## nginx
59 | ```
60 | docker run -d --name nginx --network mynetwork -p 80:80 -v /path/to/nginx/conf:/etc/nginx/conf.d nginx
61 |
62 | docker run --restart always -itd --name nginx -p 80:80 -v /root/github/NET8.0/nginx.conf:/etc/nginx/conf.d/dvs.conf nginx
63 |
64 | docker run --restart always -itd --name nginx -p 8080:80 -v /root/github/NET8.0/nginx.conf:/etc/nginx/conf.d/default.conf nginx
65 |
66 |
67 | // 创建容器专属网络
68 | docker network create -d bridge aehyok
69 | ```
70 |
71 |
72 |
73 |
74 | # 整理(https://www.cnblogs.com/SavionZhang/p/14863781.html)
75 |
76 | ##
--------------------------------------------------------------------------------
/docs/article/code/2024-01-02-fastgpt.md:
--------------------------------------------------------------------------------
1 | ## 容器操作
2 | ```
3 | // 移除所有的镜像
4 | docker rmi $(docker images -q)
5 |
6 | //停止所有的容器
7 | docker stop $(docker ps -q)
8 |
9 | // 移除所有的容器
10 | docker rm $(docker ps -a -q)
11 | ```
12 |
13 |
14 | ## 下载docker-compose配置文件
15 | ```
16 | https://doc.fastgpt.in/docs/development/docker/
17 |
18 | mkdir fastgpt
19 | cd fastgpt
20 | curl -O https://raw.githubusercontent.com/labring/FastGPT/main/files/deploy/fastgpt/docker-compose.yml
21 | curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
22 |
23 | # 在 docker-compose.yml 同级目录下执行
24 | # 要先修改docker-compose.yml中的相关配置
25 | docker-compose pull
26 | docker-compose up -d
27 |
28 | 同样用户名root,密码在docker-compose - DEFAULT_ROOT_PSW
29 | ```
30 |
31 | ## 部署成功
32 |
33 | ```
34 | http://8.219.92.157:3000/
35 | root Hk
36 | ```
37 |
38 | ## 本地开发配置
39 | ```
40 | https://doc.fastgpt.in/docs/development/intro/
41 |
42 | // 修改配置文件
43 | projects/app/.env.local
44 |
45 | // 将根package.json中的依赖进行修改
46 | "i18next": "22.5.1",
47 | "next-i18next": "13.3.0",
48 | "react-i18next": "12.3.1",
49 | ```
50 |
51 | ## mongodb 通过navicat连接
52 | ```
53 | 数据库名使用admin
54 | 用户名和密码使用上面docker-compose.yml中的配置
55 |
56 | ---这里重点忘记了如何连入mongodb数据库
57 |
58 | docker exec -it mongo sh
59 | mongo -u username -p password
60 |
61 | mongo -u username -p password --host 127.0.0.1 --port 27017
62 | ```
63 |
64 | ## 所使用的技术栈
65 | ```
66 | https://github.com/xyflow/xyflow
67 |
--------------------------------------------------------------------------------
/docs/article/code/2024-01-15-zabbix.md:
--------------------------------------------------------------------------------
1 | ## zabbix docker
2 | - 参考文章
3 | - https://mp.weixin.qq.com/s/yx-mm2Am_LIZ2AvHw21mUA
4 | - 官网文档
5 | - https://www.zabbix.com/documentation/current/zh/manual/config/hosts
6 | ## zabbix 后端
7 | ```
8 | docker run \
9 | --restart always -itd \
10 | --name zabbix-server \
11 | --link mysql \ #//--link
12 | -p 10051:10051 \ #//docker inspect看下暴露的端口 docker inspect zabbix/zabbix-server-mysql
13 | -e DB_SERVER_HOST="mysql" \ #//直接写mysql容器名字 -e设置环境变量
14 | -e MYSQL_USER="root" \
15 | -e MYSQL_PASSWORD="M9y2512!" \
16 | -d zabbix/zabbix-server-mysql #//要使用那个镜像进行创建容器
17 |
18 | docker run \
19 | --restart always -itd \
20 | --name zabbix-server \
21 | --link mysql \
22 | -p 10051:10051 \
23 | -e DB_SERVER_HOST="mysql" \
24 | -e MYSQL_USER="root" \
25 | -e MYSQL_PASSWORD="M9y2512!" \
26 | -d zabbix/zabbix-server-mysql
27 | ```
28 |
29 | ## zabbix 前端
30 | ```
31 | docker run \
32 | --restart always -itd \
33 | --name zabbix-web \
34 | --link mysql \
35 | --link zabbix-server \
36 | -p 8081:8080 \
37 | -p 8444:8443 \
38 | -e DB_SERVER_HOST="mysql" \
39 | -e MYSQL_USER="root" \
40 | -e MYSQL_PASSWORD="M9y2512!" \
41 | -e ZBX_SERVER_HOST="zabbix-server" \
42 | -e PHP_TZ="Asia/Shanghai" \
43 | -d zabbix/zabbix-web-nginx-mysql
44 | ```
45 |
46 | ## 访问
47 | ```
48 | http://xxx.xx.xxx.xxx:8081
49 | Admin zabbix
50 | ```
51 |
52 |
53 | ## 查看服务器
54 | ```
55 | //查看活跃的资源以及使用的内存
56 | top
57 |
58 | // 按照内存排序
59 | SHIFT + M
60 |
61 | // 按照CPU排序
62 | SHIFT + P
63 |
64 | //查看剩余内存
65 | free -h
66 |
67 |
68 | //查看具体进程pid的详情
69 | lsof -p pid
70 |
71 | //查看docker容器内存占用
72 | docker stats mysql
73 |
74 | // 设置docker容器内存
75 | docker update --memory="512m" --memory-swap="1g" mysql
76 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-02-24-埋点.md:
--------------------------------------------------------------------------------
1 | ## uniapp 埋点
2 | - 路由跳转
3 | - 事件封装
4 | - 滚动条封装
--------------------------------------------------------------------------------
/docs/article/code/2024-02-28-seq.md:
--------------------------------------------------------------------------------
1 | ## 查询参考地址
2 | - https://docs.datalust.co/docs/query-syntax
3 | ## 字符串查询
4 | ```
5 | ncdp
6 | ```
7 |
8 | ## and查询
9 | ```
10 | "ncdp" and RequestId='0HN1NHI3ATFD9:00000002'
11 |
12 | ```
13 | ## 字符串中的or查询
14 | ```
15 | "自主填报定时任务" or "自主填报定时任务本次执行数量"
16 | ```
17 |
18 | ## 指定字段
19 | ```
20 | RequestId = 'xxxxxx'
21 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-03-03-整理.md:
--------------------------------------------------------------------------------
1 | services: 集中管理所有与后端接口的 HTTP 请求,处理与后端交互的数据转换、缓存策略或复杂业务逻辑。
2 | 例如:对于对于前端有展示要求的日期格式转换,金额小数点位数,以及字典项目字段名称等等等处理。
3 | 例如:很多系统配置项目,需要进行缓存的数据,获取数据后可以搭配localStorage进行缓存,减少请求次数。
4 | 例如:有些数据需要全局使用的,可以结合pinia进行全局状态管理。
--------------------------------------------------------------------------------
/docs/article/code/2024-03-14-FigureAI.md:
--------------------------------------------------------------------------------
1 | Figure has demonstrated the first fruit of its collaboration with OpenAI to enhance the capabilities of humanoid robots. In a video released today, the Figure 01 bot is seen conversing in real-time.
2 |
3 | The development progress at Figure is nothing short of extraordinary. Entrepreneur Brett Adcock only emerged from stealth last year, after gathering together a bunch of key players from Boston Dynamics, Tesla Google DeepMind and Archer Aviation to "create the world's first commercially viable general purpose humanoid robot."
4 |
5 | By October, the Figure 01 was already up on its feet and performing basic autonomous tasks. By the turn of the year, the robot had watch-and-learn capabilities, and was ready to enter the workforce at BMW by mid-January.
6 |
7 | We got to see it on the warehouse floor last month, just before Figure announced a successful Series B funding round along with a collaboration agreement with OpenAI "to develop next generation AI models for humanoid robots." Now we get a taste for what that means.
8 |
9 | Adcock confirmed in an X post that Figure 01's integrated cameras send data to a large vision-language model trained by OpenAI, while Figure's own neural networks also "take images in at 10 Hz through cameras on the robot." OpenAI is also responsible for the ability to understand spoken words, and all of this influx of information is translated into "fast, low level, dexterous robot actions" by Figure's neural net.
10 |
11 | He confirmed that the robot was not teleoperated during the demo, and that the video was filmed at actual speed. All up, a remarkable achievement for a partnership that's less than two weeks old – "our goal is to train a world model to operate humanoid robots at the billion-unit level," said Adcock. At this rate, we won't have to wait long.
12 |
13 |
14 |
15 |
16 | Figure已展示了其与OpenAI合作增强人形机器人能力的第一个成果。在今天发布的一段视频中,可以看到Figure 01机器人实时对话。
17 |
18 | Figure的发展进程无疑是非同寻常的。企业家布雷特·阿德科克仅在去年才从谨慎状态走出,之前他汇集了来自波士顿动力公司、特斯拉、谷歌DeepMind和Archer Aviation的关键人员,目的是"创造世界上第一款商业化可行的通用人形机器人"。
19 |
20 | 到10月,Figure 01已能独立站立并执行基本任务。转眼至年底,这个机器人就具备了观察学习能力,并于1月中旬准备在宝马公司投入工作。
21 |
22 | 上个月我们在仓库里见到了它,之后不久Figure就宣布成功完成B轮融资,并与OpenAI达成合作协议"开发下一代人形机器人AI模型"。现在我们终于一窥这意味着什么。
23 |
24 | 阿德科克在X网站上确认,Figure 01的集成摄像头将数据发送到由OpenAI训练的大型视觉语言模型,而Figure自己的神经网络也"以10Hz频率通过机器人上的摄像头输入图像"。OpenAI还负责理解口语能力,所有这些信息流被Figure的神经网络转化为"快速、低级、灵活的机器人动作"。
25 |
26 | 他证实,这个演示视频中的机器人没有遥控操作,并且视频是以实际速度拍摄的。总的来说,这是一个令人难以置信的成就,因为这个合作伙伴关系仅维持了不到两周的时间。阿德科克说:"我们的目标是训练一个世界模型,使人形机器人能够百万单位运行。"按照这个速度,我们不用等太久就能看到了。
--------------------------------------------------------------------------------
/docs/article/code/2024-03-14-claude-haiku.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2024-03-14-claude-haiku.md
--------------------------------------------------------------------------------
/docs/article/code/2024-03-15-aoteman copy.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/code/2024-03-15-aoteman copy.md
--------------------------------------------------------------------------------
/docs/article/code/2024-03-15-docker.md:
--------------------------------------------------------------------------------
1 | centos下安装Docker的步骤
2 |
3 | ##
4 | 1、更新软件包索引
5 | sudo yum update -y
6 | 2、安装依赖关系
7 | sudo yum install -y yum-utils
8 | 3、添加Docker的仓库(阿里云 安装会快一点):
9 | sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
10 | 4、安装 Docker CE(社区版):
11 | sudo yum install -y docker-ce docker-ce-cli containerd.io
12 | 5、启动并启用 Docker 服务:
13 | // 启动docker
14 | sudo systemctl start docker
15 |
16 | // 设置开机启动
17 | sudo systemctl enable docker
18 | 6、查看docker版本
19 | docker version
20 |
21 | 添加图片注释,不超过 140 字(可选)
22 |
23 | 7、docker-compose
24 | curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
25 | 这里比较慢多等等,因为要连github,当然你也可以通过其他方式
26 | 8、 对文件赋予可执行权限
27 | chmod +x /usr/local/bin/docker-compose
28 | 9、查看版本
29 | docker-compose --version
30 |
31 | 10、准备好nginx、mongodb、redis、docker-compose.yum 配置文件
32 |
33 | docker-compose up -d
34 |
35 | 11 批量停止docker运行
36 | docker stop $(docker ps -qa)
37 | 12 批量移除docker容器
38 | docker rm $(docker ps -qa)
39 |
40 | 13、查看端口使用情况
41 | netstat -nltp
42 |
43 | 14、查看docker容器ip
44 | https://www.cnblogs.com/AmqvMI/p/16737276.html
45 |
46 | 添加图片注释,不超过 140 字(可选)
47 |
48 |
49 | 添加图片注释,不超过 140 字(可选)
50 |
51 |
52 |
53 | 20 npm源
54 | npm config get registry
55 |
56 |
57 |
58 | pnpm config set registry https://registry.npmmirror.com/
59 | pnpm config set registry https://registry.npmjs.org/
--------------------------------------------------------------------------------
/docs/article/code/2024-03-21-MC.md:
--------------------------------------------------------------------------------
1 |
2 | 
3 | ## 前言
4 | 一站式社交平台数据抓取利器,带你玩转小红书、抖音、快手、B站和微博数据分析
5 |
6 | 不经意间,来查看MediaCrawler仓库源码,发现作者已经删库了。看来是领奖了。才几天不到的时间Star数量已经直逼10K了,增长速度近乎疯狂。
7 | 前两天只是将代码下载下来了,还没认真的玩。还好代码本地已经有了。如果有兴趣的也可以来找我要,免费的哟。
8 |
9 | 
10 |
11 | 作者在这里也明显进行了标注使用了无头浏览器
12 |
13 | 
14 | ## 那到底什么事无头浏览器呢?
15 | 无头浏览器(Headless Browser)是一种浏览器程序,没有图形用户界面(GUI),但能够执行与普通浏览器相似的功能。无头浏览器能够加载和解析网页,执行JavaScript代码,处理网页事件,并提供对DOM(文档对象模型)的访问和操作能力。
16 | 与传统浏览器相比,无头浏览器的主要区别在于其没有可见的窗口或用户界面。这使得它在后台运行时,不会显示实际的浏览器窗口,从而节省了系统资源,并且可以更高效地执行自动化任务。
17 | 常见的无头浏览器包括Headless Chrome(Chrome的无头模式)、PhantomJS、Puppeteer(基于Chrome的无头浏览器库)、playwright等。它们提供了编程接口,使开发者能够通过代码自动化控制和操作浏览器行为。
18 |
19 | 
20 | > 如果您比较Playwright和 Puppeteer的贡献者页面 ,您会注意到Puppeteer的前两个贡献者现在在 Playwright 上工作。Puppeteer 团队实质上是从 Google 转移到 Microsoft 并成为 Playwright 团队。
21 |
22 | >因此,Playwright 在很多方面与 Puppeteer 非常相似。API 方法在大多数情况下是相同的,并且默认情况下 Playwright 还捆绑了兼容的浏览器。
23 |
24 | >Playwright 最大的区别在于跨浏览器支持。它可以驱动 Chromium、WebKit(Safari 的浏览器引擎)和 Firefox。
25 |
26 | 无头浏览器其实就是看不见的浏览器,所有的操作都要通过代码调用 API 来控制,所以浏览器能干的事儿,无头浏览器都能干,而且很多事儿做起来比标准的浏览器更简单。
27 |
28 | ## 能够干什么呢?
29 | 我举几个常用的功能来说明一下无头浏览器的主要使用场景
30 |
31 | - 自动化测试: 无头浏览器可以模拟用户行为,执行自动化测试任务,例如对网页进行加载、表单填写、点击按钮、检查页面元素等。
32 | - 数据抓取: 无头浏览器可用于爬取网页数据,自动访问网站并提取所需的信息,用于数据分析、搜索引擎优化等。
33 | - 屏幕截图: 无头浏览器可以加载网页并生成网页的截图,用于生成快照、生成预览图像等。
34 | - 服务器端渲染: 无头浏览器可以用于服务器端渲染(Server-side Rendering),将动态生成的页面渲染为静态HTML,提供更好的性能和搜索引擎优化效果。
35 | - 生成 PDF 文件:使用浏览器自带的生成 PDF 功能,将目标页面转换成 PDF 。
36 |
37 | ## 这个仓库如何使用呢
38 | 首先这是一个Python库,当然要安装必要的Python环境,这个我就不多说了,通过GPT或者在网上搜索都可以进行安装好。
39 | 接下来就是拿到代码后如何使用,这个其实作者也是非常的友好了,直接看README。
40 |
41 | 
42 |
43 | 最后运行命令后,会出现一个二维码,比如这里我测试的是小红书,出现二维码之后,我们用小红书App来扫描,并进行确认身份,这样无头浏览器就能识别并记住我们的身份信息,后续就可以通过该身份进行抓取一些数据了。
44 |
45 | 
46 | 这里我配置了一条小红书的笔记ID,这里是个数据可以配置多个的。
47 |
48 | 好了,OK ,数据就被这么简单的抓取下来了。
49 | 
50 |
51 | 
52 | 作者还特意对数据存储做了封装,如果数据量大的时候存储起来可能就非常的方便了。
53 | 如果需求量很大,还可以对其源码进行研究改造,好了今天的学习就到这里了。
54 |
--------------------------------------------------------------------------------
/docs/article/code/2024-03-29-读一人企业方法论.md:
--------------------------------------------------------------------------------
1 | __outline__定义一人企业规划一人企业构建一人业务
--------------------------------------------------------------------------------
/docs/article/code/2024-03-30-rpa.md:
--------------------------------------------------------------------------------
1 | ## RPA工具
2 | - UiPath https://www.uipath.com.cn/
3 | - 影刀 https://www.yingdao.com/
4 |
5 | ## 影刀连接mysql
6 | ```
7 | 要首先先mysql的驱动程序
8 | https://dev.mysql.com/downloads/connector/odbc/
9 |
10 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-04-04-mac-docker.md:
--------------------------------------------------------------------------------
1 | ## 安装docker
2 | ```
3 | brew install docker
4 |
5 | docker --version 出现版本号则安装成功
6 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-04-10-vitepress.md:
--------------------------------------------------------------------------------
1 | pnpm init
2 | pnpm add -D vitepress
3 |
--------------------------------------------------------------------------------
/docs/article/code/2024-04-11-gemini.md:
--------------------------------------------------------------------------------
1 | ## 参考
2 | - https://xiaohu.ai/p/5834
3 |
4 | ##
5 | Google 宣布 Gemini 1.5 Pro 开放API 现已在180多个国家提供 新增对原生音频(语音)理解能力、文件API、系统指令、JSON模式等功能 现在Gemini模型能够直接处理音频输入,而不需要将音频先转换为文本。
6 |
7 |
8 |
9 |
10 | ## apikey
11 | - https://aistudio.google.com/app/apikey
12 |
13 | ```
14 | curl \
15 | -H 'Content-Type: application/json' \
16 | -d '{"contents":[{"parts":[{"text":"Write a story about a magic backpack"}]}]}' \
17 | -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=YOUR_API_KEY'
18 | ```
19 |
20 |
21 | ## 调用接口 接口详细说明
22 | - https://ai.google.dev/tutorials/get_started_web?hl=zh-cn
--------------------------------------------------------------------------------
/docs/article/code/2024-04-30-video2blog.md:
--------------------------------------------------------------------------------
1 | 我第一个开源AI小产品-video2blog即将正式发布
2 |
3 | ## 前言
4 | 首先它是为了解决我自己的个人问题。不管能不能帮到你,或者对于看到的你是否有点利用价值,也没太大的关系,最起码你可以来看看我开发小产品的整个过程。
5 |
6 | 一段时间以来,我开始通过youtube平台来获取一些知识,或者打发早晚上下班坐地铁的时间。主要是我早晚通勤时间过长,差不多都是一个小时吧,单纯的刷刷什么某音、某红的真真的浪费了大量的时间,所以我选择了youtube平台。我在 youtube 看视频时,觉得有点用的信息我会截个图,方便回头查找关键字,尤其是看技术类的视频。但有时候虽然截图了,但是前后是有关联的,关联的地方当时又没截图,但是隐约的也记不起前后文的联系了,于是尴尬了,就只能重新翻看这个视频了。因为我遇到过好多次了,而且比较浪费时间。
7 | 于是就有了video2blog。
8 | ## video2blog的开发历程
9 | 通过视频链接结合AI的能力,将整个视频转换为一篇图文笔记或者图文博客。图文最大的好处就是方便我自己回看,就像小时候我们自己的错题笔记。
10 |
11 | 
12 | 从3月底附近我就在琢磨我这个小产品了,但当时的思路还没有打开,但是脑海中已经有了初步的设想。从那时起代码就已经开始了,因为要开发一个pc的客户端,也有很多的技术没有使用过,需要投入时间去研究一番。说真的还是有点小兴致,毕竟是解决自己的痛点的。
13 |
14 | 
15 | 刚好4月初跟随清明节一起请了三天假,玩完回来状态也非常的nice,那一周真的是疯狂的码码查bug,也慢慢的有了上图的自我感觉的清晰思路。
16 | 目前按照上图基本上跑通了。但是很多功能还非常不完善或者还没有加进来。比如视频通过whisper来转字幕目前通过python实验成功,但没加入到项目中,再比如对接AI的字幕转长文功能也没真正落地。这些都可以通过其他的工具来实现,所以暂时就先搁置一下,解决我觉得更重要的问题了。
17 |
18 | 
19 | 我只能说一周的时间真的太短了,因为平常还有别的项目在搞,上班的时候只能抽点时间来看看查查问题,优化下思路等等,更多的时候也在思考吧。有几天真的也不太想上班了。
20 |
21 | 
22 | 每周实现的功能也不多,但紧紧把把的能基本按照自己的预想在走,有时候一天的问题解决不了,我就担心这进度要慢了,明天得抓紧时间了。
23 |
24 | 
25 | 这里我之前也在3月底的时候留过记录。我自己的期待也是争取5月底能有一个比较好的版本出来。就是提前尽量给自己做好计划目标,哪怕没完成,没达到预期,也能在自己复盘的时候找到问题,或者能总结出一些经验教训。
26 |
27 | ## 现状
28 | 
29 |
30 | 通过这个图便可以简单的看到我整个小产品的流程走向,其实现在看来流程清晰,思路也是比较简单粗暴的。
31 | 当然了也有其他更好的使用模式。这里暂时针对我自己算是现阶段对我来说是一个比较好的模式选择了。
32 |
33 | 我的小产品现阶段借助外部的AI工具是可以走通的。比如可以借助Whisper模型进行语音转文字,或者直接通过它来翻译。
34 | 如果有字幕,字幕刚好是英文,也可以通过AI工具进行翻译为中文。翻译为中文后,再通过AI工具转换为文章或者叫笔记。
35 | 转换为文章的时候对prompt是有要求的,转换的时候要添加上目录,并且在目录上添加上视频中的时间区间,这样方便我根据时间区间来获取图片并去除重复的图片,然后选择插入到文章中。
36 |
37 | ## 最后
38 | 现在预发布这个小产品也算是对我自己,这一个多月时间的阶段性总结。也是对我自己的一个小小的挑战。因为从来也没有进行过对外发布一个属于自己的小产品,这也算是一次小小的尝试。
39 | 很多时候有了想法,那就去做做试试看吧,也许其中有非常多的困难,但是只有去做了才知道,这些个小困难在一天天的排解中,慢慢的也不算是个什么困难了。
40 | 也许这个小产品并不是很完美,但最起码我自己能够慢慢的用起来了。
41 |
42 | 如果你觉得小工具还有点意思,便可以提前来玩一下看看。如果有什么问题,也可以随时联系我。
43 | 目前支持window和mac,在我自己的电脑上安装尝试都没有问题的。当然可能会有兼容性的问题,毕竟第一次尝试搞一个跨平台的客户端。
44 |
45 | 
46 |
47 | 我创建了一个video2blog的微信群。
48 | 可以关注我的公众号:那个曾经的少年回来了
49 | 然后后台发送消息: video2blog。
50 | 由于项目还没真正的成型发布,所以暂时就不将开源地址放出来了。因为暂时也是堆叠功能代码,主要以实现功能为主。争取5月底正式发布第一个完整的版本。
51 | 最后如果产品思路对你有价值,你也可以快速复刻一个。
52 |
53 |
54 |
55 | 看到很多人都拥有自己的产品,非常的羡慕人家。但是苦于自己没有什么想法。但有人说可以从自己的痛点出发,首先来解决自己的问题,想着想着我发现了原来自己有很多的痛点,也许这就是我可以做的事情吧。
--------------------------------------------------------------------------------
/docs/article/code/2024-05-08-whisper.md:
--------------------------------------------------------------------------------
1 | ## whisper faster-whisper 速度比对
2 | - https://juejin.cn/post/7351392942911864868?searchId=20240508113218999CCD9229F8AC19C1DA
3 | - whisper.cpp CPU模式太慢了,暂时不考虑,可能主要支持在Mac CoreML 加上吧
4 | - faster-gpu 提升非常明显 速度提升4倍
5 |
6 | ## anaconda 下载安装
7 |
8 | window、mac、 linux都可以
9 | - https://www.anaconda.com/download/success
10 | 这里要注意python的版本,尽量跟它保持一致
11 |
12 | 安装conda
13 | -https://juejin.cn/post/7106417968321396766?searchId=202405081130346B964EF6250596FD6FA8
14 |
15 | conda安装
16 | - https://blog.csdn.net/m0_74942241/article/details/134136434
17 |
18 |
19 | ## whisper替换为阿里的通义听悟
20 | - https://help.aliyun.com/zh/tingwu/?spm=a2c4g.11186623.0.0.307b67349DyWbD
--------------------------------------------------------------------------------
/docs/article/code/2024-05-14-openharmony.md:
--------------------------------------------------------------------------------
1 | ## 华为开源鸿蒙分布式操作系统
2 | - https://github.com/fenwii/OpenHarmony
3 |
4 | - 方舟开发框架 ArkUI
5 | - https://docs.openharmony.cn/pages/v4.0/zh-cn/application-dev/application-dev-guide.md
6 |
7 | - 各种UI小demo
8 | - https://developer.huawei.com/consumer/cn/forum/topic/0208141669934007200?fid=0109140870620153026
9 |
10 | ## ohpm 安装使用
11 | - https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/ide-command-line-ohpm-0000001490235312-V2
12 |
13 | https://ohpm.openharmony.cn/
14 |
15 |
16 | ## 社区
17 | - https://developer.huawei.com/consumer/cn/forum/
18 |
19 |
20 | ## 组件
21 | - https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-data-preferences-0000001813416160#ZH-CN_TOPIC_0000001813416160__%E5%AF%BC%E5%85%A5%E6%A8%A1%E5%9D%97
22 |
23 |
24 | ## 各种案例
25 | - https://gitee.com/harmonyos-cases/cases#/harmonyos-cases/cases/blob/master/CommonAppDevelopment/feature/pulltorefreshnews/README.md
26 |
27 | ## 类库
28 | - https://ohpm.openharmony.cn/#/cn/detail/@pura%2Fharmony-utils
--------------------------------------------------------------------------------
/docs/article/code/2024-05-29-cocos.md:
--------------------------------------------------------------------------------
1 | ## 网址
2 | - cocos.com
3 | - aehyok Hk
--------------------------------------------------------------------------------
/docs/article/code/2024-06-03-kongtou.md:
--------------------------------------------------------------------------------
1 | ## 网址
2 | - https://youtu.be/nJwlzYfPhr8?si=RcKldzWFgDWi6nWP
3 |
4 |
5 |
6 | ## 6月25日
7 | - https://task.onenesslabs.io/?code=pLjRD
8 |
--------------------------------------------------------------------------------
/docs/article/code/2024-06-04-heng.md:
--------------------------------------------------------------------------------
1 | ## 网址
2 | - https://www.youtube.com/@SuperSimpleSongs/videos
--------------------------------------------------------------------------------
/docs/article/code/2024-06-05-query.md:
--------------------------------------------------------------------------------
1 | ## 添加系统服务dvsv3-query.service
2 | - /usr/lib/systemd/system
3 | ```
4 | [Unit]
5 | Description=dvsv3-query
6 | After=network-online.target
7 | Wants=network-online.target
8 |
9 | [Service]
10 | # modify when deploy in prod env
11 | User=dvs
12 | Group=dvs
13 |
14 | Type=simple
15 | ExecStart=/usr/local/dotnet-sdk/dotnet /usr/local/sunlight/dvsv3/dvs-query/DVS.Query.Api.dll
16 | WorkingDirectory=/usr/local/sunlight/dvsv3/dvs-query
17 |
18 | Restart=always
19 | RestartSec=1
20 | StartLimitInterval=0
21 |
22 | [Install]
23 | WantedBy=multi-user.target
24 |
25 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-06-13-comfyui.md:
--------------------------------------------------------------------------------
1 | ## comfyui
2 | - https://github.com/comfyanonymous/ComfyUI
3 | ## manager
4 | - https://github.com/ltdrdata/ComfyUI-Manager
5 | ## 可下载工作流的地方
6 | - https://openart.ai/workflows/home
7 | ## 可下载模型
8 | - https://civitai.com/
9 | - 选择模型 https://blog.csdn.net/weixin_67276852/article/details/139062908
10 | - https://blog.csdn.net/weixin_67276852/article/details/139269488
11 | - 汉化模型 https://blog.csdn.net/weixin_67276852/article/details/139069016
12 |
13 |
14 |
15 | - 在线运行
16 | - https://www.runcomfy.com/
--------------------------------------------------------------------------------
/docs/article/code/2024-06-24-lf.md:
--------------------------------------------------------------------------------
1 | ## 6月24日下午沟通结果
2 | - 1、周五下班前,部署一个演示版本(大屏首页为主)
3 | - 2、周日晚上尽量能通过接口联调成功
4 | - 3、部署的服务器需要提前提供
5 | - 4、UI切图提早给
6 | - 5、意向金
7 |
8 |
9 |
10 |
11 | mysql版本:8.0.35
12 |
13 | dotnet 6.0 https://dotnet.microsoft.com/zh-cn/download/dotnet/6.0
14 |
15 | aarch64 /usr/local/dotnet6 dev
16 |
17 | 101.200.243.192 部署
18 | - /root/dotnet6/dotnet
19 |
20 |
21 | /usr/lib/systemd/system
22 |
23 | ```
24 | [Unit]
25 | Description=sun-xxm
26 | After=network-online.target
27 | Wants=network-online.target
28 |
29 | [Service]
30 | # modify when deploy in prod env
31 | # User=dvs
32 | # Group=dvs
33 |
34 | Type=simple
35 | ExecStart=/root/dotnet6/dotnet /usr/local/sunlight/sun-xxm/sun.xxm.dll
36 | WorkingDirectory=/usr/local/sunlight/sun.xxm
37 |
38 | Restart=always
39 | RestartSec=1
40 | StartLimitInterval=0
41 |
42 | [Install]
43 | WantedBy=multi-user.target
44 | ```
45 |
46 | systemctl enable sun-xxm
47 |
48 | systemctl start sun-xxm
49 | systemctl stop sun-xxm
50 |
51 | journalctl -u sun-xxm.service -f
52 |
53 |
54 | chmod -R 777 /root/dotnet6/
55 |
56 | 部署到服务器
57 | tar -zxvf aspnetcore-runtime-6.0.3-linux-x64.tar.gz -C /usr/local/dotnet
58 |
--------------------------------------------------------------------------------
/docs/article/code/2024-07-09-baidumap.md:
--------------------------------------------------------------------------------
1 | ## 获取geo数据
2 | - https://geojson.cn/
3 | - https://www.poi86.com/poi/download_area_geojson/110108.html
4 |
5 | ## marker点位
6 | - https://blog.csdn.net/z1093541823/article/details/124098232
--------------------------------------------------------------------------------
/docs/article/code/2024-07-19-tools.md:
--------------------------------------------------------------------------------
1 | ## base64转换为图片
2 | - https://www.uutils.com/image/base64_to_image.htm
3 |
4 | ## svg 转换为png
5 | - https://svgtopng.com/
6 |
7 | ## 2024年7月23日 小郑上午分享AI RAG
8 | - https://github.com/assafelovic/gpt-researcher
9 | - https://github.com/microsoft/autogen
10 | - https://github.com/langchain-ai/langchain
--------------------------------------------------------------------------------
/docs/article/code/2024-07-24-query.md:
--------------------------------------------------------------------------------
1 | ## 菜单
2 |
3 | ```
4 | ## 先通过root 获取根菜单
5 | select * from md_sysparameters s where s.name like '%root%' and systemid='dev'
6 |
7 | ## 然后再通过MenuID获取下级菜单
8 | select * from md_sysparameters s where s.`name` like '%90000' and systemid='dev'
9 | ```
10 |
11 | ## 数据导入菜单
12 | ```
13 | {
14 | "MenuID": "60000",
15 | "MenuTitle": "乡村摸底调查数据导入",
16 | "DisplayOrder": 25,
17 | "FatherID": "0",
18 | "IconName": "",
19 | "MenuType": "LoadFromServer",
20 | "MenuParameter": "",
21 | "CanUse": true,
22 | "Level": 1,
23 | "IconIndex": "-1",
24 | "Children": []
25 | }
26 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-08-02-wiki.md:
--------------------------------------------------------------------------------
1 | ## 开源项目地址
2 | - https://github.com/requarks/wiki
3 |
4 | ## 部署机器
5 | 121.37.222.1
6 |
7 | http://szns.utuapp.cn/
8 |
9 | 数据库wiki
10 |
11 |
12 | /usr/local/sunlight/wiki
13 |
14 | 停止服务
15 | systemctl stop wiki
16 |
17 | 启动服务
18 | systemctl start wiki
19 | systemctl restart wiki
20 |
21 |
22 | chmod 777 -R wiki
--------------------------------------------------------------------------------
/docs/article/code/2024-08-19-window-docker.md:
--------------------------------------------------------------------------------
1 | ## 本机存储docker的路径
2 | - G:\docker-desktop
3 |
4 | ## mysql 容器
5 | docker run --name gpt-mysql -p 36:3306 --dns 8.8.8.8 --dns 8.8.4.4 -e MYSQL_ROOT_PASSWORD=M9y2512! -d mysql
6 |
7 | Navicate可直接链接mysql
8 |
9 | ## one-api
10 | - https://github.com/songquanpeng/one-api
11 | ```
12 | // 拉取镜像
13 | git pull justsong/one-api
14 |
15 | // --network="host" 使容器内的程序可以访问宿主机上的mysql
16 | docker run --name one-api -d --restart always -p 35:3000 -e SQL_DSN="root:M9y2512!@tcp(localhost:36)/oneapi" --dns 8.8.8.8 --dns 8.8.4.4 --network="host" -e TZ=Asia/Shanghai justsong/one-api
17 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-08-23-openobserve.md:
--------------------------------------------------------------------------------
1 | ## 文档中心
2 | - https://openobserve.ai/docs/quickstart/#openobserve-cloud
3 | - https://github.com/openobserve/openobserve
4 |
5 | ## docker创建
6 | ```
7 | docker run -d \
8 | --name openobserve \
9 | -v $PWD/data:/data \
10 | -p 5080:5080 \
11 | -e ZO_ROOT_USER_EMAIL="455043818@qq.com" \
12 | -e ZO_ROOT_USER_PASSWORD="M9y2512!" \
13 | openobserve/openobserve:latest
14 | ```
15 |
16 | ## 本地访问
17 | - http://localhost:5080 登录
--------------------------------------------------------------------------------
/docs/article/code/2024-09-03-mysql.md:
--------------------------------------------------------------------------------
1 | // 创建用户
2 | CREATE USER 'dvs'@'localhost' IDENTIFIED BY 'M9y2512!!!';
3 |
4 | // 给用户授权某个数据库
5 | grant all privileges on dvsv4.* to 'dvs'@'localhost';
6 |
7 | // 刷新权限
8 | flush privileges;
9 |
10 | ## docker日志
11 | ```
12 | // 查看容器的日志
13 | docker logs xxx
14 |
15 | // 查看容器的最新100条日志
16 | docker logs --tail 100 xxx
17 |
18 | // 实时查看最新的日志
19 | docker logs -f --tail 100 xxx
20 | ```
21 |
22 | ## 确保服务器正常访问外网
23 | ```
24 | //公共的dns
25 | ping 8.8.8.8
26 |
27 | // 在服务器通过域名查找IP
28 | nslookup www.baidu.com
29 |
30 | // 在服务器上通过ip查找域名
31 | nslookup xxx.xxx.xxx.xx
32 |
33 | 由于我服务器上的tailscale服务开着,导致服务器上无法访问外网
34 |
35 | //暂时关闭tailscale服务
36 | sudo tailscale down
37 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-09-03-在线excel.md:
--------------------------------------------------------------------------------
1 | ## univer在线excel方案
2 | - 开源地址 https://github.com/dream-num/univer
3 | - 文档地址 https://univer.ai/zh-CN/guides/sheet/features/import-export
4 |
5 | ## cron vue3
6 | - https://abichinger.github.io/vue-js-cron/demo.html
--------------------------------------------------------------------------------
/docs/article/code/2024-10-15-qrcode.md:
--------------------------------------------------------------------------------
1 | ## C#
2 | https://codecrete.net/QrCodeGenerator/api/Net.Codecrete.QrCodeGenerator.html
3 |
4 | ## 计算
5 | 像素单位px /dpi(打印机 300 600)*2.54= xxx cm
6 |
7 | 纠错级别为 0 时,遮盖比例为 7%。
8 | 纠错级别为 1 时,遮盖比例为 15%。
9 | 纠错级别为 2 时,遮盖比例为 25%。
10 | 默认情况为 30%。
--------------------------------------------------------------------------------
/docs/article/code/2024-10-21-zx.md:
--------------------------------------------------------------------------------
1 | 全屋 141957
2 |
3 | 剪掉沙发6800
4 |
5 | 剪掉儿童次卧柜子6平方 6*628=3600
6 |
7 | 蹲便和全智能马桶 550 + 1500
8 |
9 | 卧室套装门只有三套,没有包括两个卫生间的,以及厨房的
10 |
11 | - 房屋拆除
12 | - 两个阳台的封窗
13 | - 清洁公司清洁
--------------------------------------------------------------------------------
/docs/article/code/2024-10-30-lin-linux.md:
--------------------------------------------------------------------------------
1 | ## opencloudos通过yum安装docker-compose
2 | ```
3 | yum install docker-compose
4 |
5 | docker -v
6 |
7 | docker-compose -v
8 | ```
9 |
10 | ## 安装fastgpt docker
11 | ```
12 | 使用docker-compose 安装
13 | https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose-pgvector.yml
14 |
15 | //如果docker-compose 版本过低,需要手动卸载升级
16 | which docker-compose 查看版本
17 |
18 | // 然后移除卸载
19 | sudo rm /usr/local/bin/docker-compose
20 |
21 | // 重新下载比如这个版本号,并重新设置到/usr/local/bin/docker-compose
22 | sudo curl -L "https://github.com/docker/compose/releases/download/v2.17.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
23 |
24 | // 如果github上下载太慢了可以更换为国内的
25 | sudo curl -L https://get.daocloud.io/docker/compose/releases/download/v2.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
26 |
27 | // 也可以直接在gihub上下载后再使用(找到对应的版本即可)
28 | uname -s 查看系统
29 | uname -m 查看系统位数
30 | - x86_64: 64 位的 x86 架构(常见于大多数现代桌面和服务器)。
31 | - i686 或 i386: 32 位的 x86 架构。
32 | - armv7l: 32 位的 ARM 架构。
33 | - aarch64: 64 位的 ARM 架构。
34 | - ppc64le: 64 位的 PowerPC 架构(小端)。
35 |
36 | https://github.com/docker/compose/releases/tag/v2.30.1
37 |
38 | // 重新授权
39 | sudo chmod +x /usr/local/bin/docker-compose
40 |
41 | //查看版本
42 | docker-compose version
43 |
44 | // 安装时可能存在问题,请点击链接
45 | https://juejin.cn/post/7220730324752859195?searchId=202410311129016E330B83E21403718938
46 | ```
47 |
48 | ## 代理的问题
49 | - cloudflare 中转代理
50 | - https://doc.tryfastgpt.ai/docs/development/proxy/cloudflare/
51 | - 优选IP提速 https://github.com/XIU2/CloudflareSpeedTest
52 |
53 | ## top查看内存
54 | ```
55 | top
56 | //清空缓存
57 | sudo sync; echo 3 | sudo tee /proc/sys/vm/drop_caches
58 |
59 | //只清空页面缓存
60 | sudo sync; echo 1 | sudo tee /proc/sys/vm/drop_caches
61 | ```
62 |
63 |
64 | ## 暂停容器和移除容器
65 | ```
66 | docker stop fastgpt
67 | docker stop oneapi
68 | docker stop sandbox
69 | docker stop pg
70 | docker stop mysql
71 | docker stop mongo
72 |
73 | docker rm fastgpt
74 | docker rm oneapi
75 | docker rm sandbox
76 | docker rm pg
77 | docker rm mysql
78 | docker rm mongo
79 | ```
80 | 3001 root Lin2024!!!
81 | 放到sh文件中执行可能会报错,主要因为换行符不一致
82 | 可以使用如下命令 dos2unix del.sh
--------------------------------------------------------------------------------
/docs/article/code/2024-11-19.-自主填报配置sql.md:
--------------------------------------------------------------------------------
1 |
2 | ## 自主填报配置sql算法注意事项
3 | - sql中可以使用的几个字段
4 | - userid
5 | - regionid
6 | - taskid
7 | - populationid
8 |
9 | ## 例子
10 | - 如下 id,是业务表的guid字段, taskid是业务表的关联taskid,其他字段则是业务表的字段
11 | select UUID() id, @taskid taskid from User u where u=@userid
12 |
13 | ## 注意事项
14 | - 要发布自主填报之后才可以写sql
15 |
16 |
17 | - 保证必须有数据的
18 | ```
19 | SELECT UUID() id, @taskid taskid, p.`Name` c1,CONCAT(hn.`Name`, h.HouseNumber) as c2,vp.Contact c3,p.IdCard c4 FROM `User` u
20 | LEFT JOIN Population p on p.Id = u.PopulationId
21 | LEFT JOIN VillagePopulation vp on vp.PopulationId = u.PopulationId
22 | LEFT JOIN VillageHouseholdPopulation hp on hp.PopulationId = u.PopulationId
23 | LEFT JOIN VillageHousehold h on h.Id = hp.VillageHouseholdId
24 | LEFT JOIN VillageHouseName hn on hn.Id = h.HouseNameId
25 | WHERE u.Id = @userid
26 | ```
27 | - 后面的查询sql可能没有数据的话,就要通过left join进行关联查询来保证有数据
28 | ```
29 | SELECT
30 | base.id,
31 | base.taskid,
32 | temp.c1,
33 | temp.c2,
34 | temp.c3,
35 | temp.c4
36 | from (
37 | SELECT
38 | UUID() as id,
39 | @taskid as taskid
40 | ) AS base
41 | LEFT JOIN (
42 | SELECT
43 | p.`Name` as c1,
44 | CONCAT(hn.`Name`, h.HouseNumber) as c2,
45 | vp.Contact as c3,
46 | p.IdCard as c4
47 | FROM `User` u
48 | LEFT JOIN Population p on p.Id = u.PopulationId
49 | LEFT JOIN VillagePopulation vp on vp.PopulationId = u.PopulationId
50 | LEFT JOIN VillageHouseholdPopulation hp on hp.PopulationId = u.PopulationId
51 | LEFT JOIN VillageHousehold h on h.Id = hp.VillageHouseholdId
52 | LEFT JOIN VillageHouseName hn on hn.Id = h.HouseNameId
53 | WHERE u.Id = @userid
54 | ) AS temp ON 1=1
55 | ```
56 |
57 | ## 自主填报 视图获取人信息
58 | ```
59 | SELECT v.`Name`, v.IdCard, v.Contact, v.HouseName, v.HouseNumber FROM `User` u
60 | LEFT JOIN VillageHouseholdPopulationView v on v.PopulationId = u.PopulationId
61 | WHERE u.Id = 1676431146113699840
62 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-11-22-台账.md:
--------------------------------------------------------------------------------
1 | ## web端查询转换(MariaDB MaxScale)
2 | ```
3 | // 直接对Long类型字段进行转换
4 | select CAST(r.Id AS CHAR(19)) from DynamicReportTaskRecord r where r.Id=1862420590838173696
5 | ```
6 |
7 | ## 台账表结构分析
8 | ```
9 | ## 台账模板(包含TableSchemaId)
10 | select * from ImportTemplate
11 |
12 | ## 表结构
13 | select * from TableSchema
14 |
15 | ## 表字段泪飙 (包含TableSchemaId)
16 | select * from ColumnSchema
17 |
18 | ## 通过IsSearch来设置是否可以作为查询字段
19 | SELECT * FROM ColumnSchema S WHERE S.IsSearch = 1
20 | ```
21 |
22 | ## 一套表任务配置列表
23 | select * from DynamicReport(包含QueryId、TableSchemaId)
24 |
25 | select * from DynamicReport s where s.TableSchemaId is not null
26 |
27 | ## 数据查询算法(sql或者C#逻辑)
28 | select * from `Query` s where s.Id= 1674720456927744000
29 |
30 |
31 | ## 一套表数据修改
32 | ```
33 | {
34 | "action": 2,
35 | "formName": "1839216387046920192-dynamicReportId",
36 | "areaId": 0,
37 | "parameters": {
38 | "id": "1847161187184300032",
39 | "dynamicReportTaskId": "1837009693336353453",
40 | "dynamicReportTaskRecordId": "1839221861414752256",
41 | "dynamicReportId": "1839216387046920192"
42 | }
43 | }
44 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-11-29-java.md:
--------------------------------------------------------------------------------
1 |
2 | ## 登录
3 | ```
4 | // Swagger快捷登录json
5 | {
6 | "userName": "admin",
7 | "password": "admin123456!",
8 | "captchaValue": "string",
9 | "captchaKey": "string",
10 | "loginType": "Swagger"
11 | }
12 | ```
13 |
14 | ## 打包
15 | ```
16 | maven package
17 | // 生成jar包,在target目录下
18 | // 拷贝到服务器的目录 /usr/local/sunlight/sun-xxm-java
19 |
20 | // 重启服务
21 | systemctl restart sun-xxm-java
22 |
23 | // 访问地址
24 | http://101.200.243.192:624/swagger-ui/index.html
25 |
26 | // 前端 打包
27 | pnpm build
28 |
29 | // 拷贝到服务器的目录 /usr/local/sunlight/xxm-ui/xxm-ui
30 | ```
--------------------------------------------------------------------------------
/docs/article/code/2024-12-07-univer.md:
--------------------------------------------------------------------------------
1 | ## 官方文档
2 | - https://docs.univer.ai/zh-CN/guides/sheets/pro-features/server/quick-start
3 |
4 | 在线Excel实时编辑 excel导入导出
5 |
6 | e:/work/git-refactor/univer
7 |
8 | 如何开启服务
9 | cd univer-server && bash run.sh start-demo-ui
--------------------------------------------------------------------------------
/docs/article/code/2024-12-24-小程序订阅消息.md:
--------------------------------------------------------------------------------
1 | ## 跳转小程序场景值
2 | - https://mp.zhls.qq.com/youshu-docs/develop/event/channel/chan_wxapp_scene.html
3 | - https://developers.weixin.qq.com/miniprogram/dev/reference/scene-list.html
--------------------------------------------------------------------------------
/docs/article/code/2024-12-28-独立站.md:
--------------------------------------------------------------------------------
1 | ## 韩国跨境电商网站
2 | -
3 | - https://developers.coupangcorp.com/hc/en-us/categories/360002105414
4 | - 查询订单 https://developers.coupangcorp.com/hc/zh-cn/articles/360033919573-%E8%AE%A2%E5%8D%95%E5%88%97%E8%A1%A8%E6%9F%A5%E8%AF%A2-%E6%8C%89%E5%A4%A9%E5%88%86%E9%A1%B5
--------------------------------------------------------------------------------
/docs/article/code/2025-01-03-nas.md:
--------------------------------------------------------------------------------
1 | | 商品名称 | 价格 | 商品链接 |
2 | | -------------------- | -------- | -------------------------------------------- |
3 | | 畅网N100 主板 | 908元 | [链接](https://item.jd.com/10092624767636.html) |
4 | | 32GB DDR5 5600内存条 | 576.11元 | [链接](https://u.jd.com/bgVId2k) |
5 | | m.2系统硬盘 256GB | 99元 | [链接](https://u.jd.com/bG7kBTb) |
6 | | mini-itx 5盘位机箱 | 291元 | [链接](https://u.jd.com/bgVMttG) |
7 | | 1U电源 | 179元 | [链接](https://u.jd.com/bg7VoXg) |
8 |
--------------------------------------------------------------------------------
/docs/article/code/2025-01-20-ready.md:
--------------------------------------------------------------------------------
1 | - 两个身份证+户口本
2 | - 给娃娃带点药
3 | - 充电宝+数据线
4 | - 带个电脑
5 | - 化妆品(洗面奶)
6 | - 衣服
7 | - 快递站点 搞个箱子?
8 | - 皮皮和你买点袜子
9 | - 看内裤是否需要买?
--------------------------------------------------------------------------------
/docs/article/code/2025-03-10-知识库.md:
--------------------------------------------------------------------------------
1 | ## dify
2 | - https://docs.dify.ai/zh-hans/guides/knowledge-base/create-knowledge-and-upload-documents/chunking-and-cleaning-text#etl
3 | - 数据清洗
4 | - 检索
5 | - 召回
6 | - 清洗
7 | - 为了保证文本召回的效果,通常需要在将数据录入知识库之前便对其进行清理。例如,文本内容中存在无意义的字符或者空行可能会影响问题回复的质量,需要对其清洗。
8 |
9 |
10 | ## fastgpt
11 | - https://doc.tryfastgpt.ai/docs/guide/knowledge_base/rag/
12 |
13 |
14 | ## qwq2.5B
15 | - https://zhuanlan.zhihu.com/p/28378860157
16 | - https://deepseek.csdn.net/67cbf0edd649b06b61ca4f87.html
17 | - https://www.modelscope.cn/models/Qwen/QwQ-32B/files
18 |
19 | ### 第一种方式
20 | ```
21 | 受理 30分钟
22 | 审批 1小时
23 | 出证
24 |
25 | 受理人:县市政务服务中心综合窗口工作人员 审批人:县市财政局非税收入管理局票据管理工作人员 发证人:县市财政局非税收入管理局票据管理工作人员
26 |
27 | 申请人需提交的材料清单
28 | 序号 材料名称
29 | 无
30 |
31 | 备注:1、此事项原需3项材料(①财政票据领用证申请表、②行政事业性收费项目批复文件复印件、③单位机构代码证及法人身份证复印件) ,均已取消,现无需提供申请材料。
32 | 2、按照省财政厅鄂财综发【2019】8号文件要求,恩施州非税收入管理局已于2019年底启动了财政电子票据改革,2021年12月31日前全面覆盖,以后各用票单位均在线上领取电子票据,无需《财政票据领用证》。此事项2022年可以取消。
33 |
34 |
35 |
36 |
37 |
38 | 根据上面的内容,帮我生成县市政务服务中心综合窗口办理中公民办事经常遇到的一些常见问题,直接给我生成一个csv文件列表即可。注意问题中都要加上所属办理的什么事项
39 | ```
40 |
41 | ## ollama运行bge-m3
42 | ```
43 | ollama pull bge-m3
44 |
45 |
46 | ```
47 |
48 |
49 |
50 |
51 | ## 第二种方式
52 | ```
53 | 受理 30分钟
54 | 审批 1小时
55 | 出证
56 |
57 | 受理人:县市政务服务中心综合窗口工作人员 审批人:县市财政局非税收入管理局票据管理工作人员 发证人:县市财政局非税收入管理局票据管理工作人员
58 |
59 | 申请人需提交的材料清单
60 | 序号 材料名称
61 | 无
62 |
63 | 备注:1、此事项原需3项材料(①财政票据领用证申请表、②行政事业性收费项目批复文件复印件、③单位机构代码证及法人身份证复印件) ,均已取消,现无需提供申请材料。
64 | 2、按照省财政厅鄂财综发【2019】8号文件要求,恩施州非税收入管理局已于2019年底启动了财政电子票据改革,2021年12月31日前全面覆盖,以后各用票单位均在线上领取电子票据,无需《财政票据领用证》。此事项2022年可以取消。
65 |
66 |
67 |
68 |
69 |
70 | 根据上面的内容,帮我生成县市政务服务中心综合窗口办理中公民办事经常遇到的一些常见问题,直接给我生成一个csv文件列表即可。注意问题中都要加上所属办理的什么事项.只需要列出问题就可以了 不用进行回答
71 | ```
72 |
73 |
74 | ```
75 | 问题
76 | 办理财政票据领用证需要什么材料?
77 | 财政票据领用证的受理时间是多久?
78 | 财政票据领用证的审批时间是多久?
79 | 财政票据领用证的发证人是谁?
80 | 办理财政票据领用证的受理人是谁?
81 | 办理财政票据领用证的审批人是谁?
82 | 现在办理财政票据领用证还需要提交哪些材料?
83 | 以前办理财政票据领用证需要提交哪些材料?
84 | 财政票据领用证的申请材料取消了吗?
85 | 财政票据领用证申请表现在还需要提交吗?
86 | 行政事业性收费项目批复文件复印件还需要提交吗?
87 | 单位机构代码证及法人身份证复印件还需要提交吗?
88 | 财政电子票据改革是从什么时候开始的?
89 | 财政电子票据改革的覆盖时间是多久?
90 | 现在各用票单位如何领取电子票据?
91 | 财政票据领用证事项什么时候可以取消?
92 | 在线上领取电子票据还需要财政票据领用证吗?
93 | ```
94 |
95 |
96 |
97 |
98 |
99 | ## 1. 残疾儿童康复服务办理流程流程步骤
100 |
101 | 服务名称:残疾儿童康复服务
102 | 第一步:受理(耗时:1小时)
103 | 第二步:审核办结
104 |
105 | ## 2. 残疾儿童康复服务办理流程人员角色
106 |
107 | 受理人:县市政务服务中心综合窗口工作人员
108 | 执行人:县市残联康复工作人员
109 |
110 | ## 3. 残疾儿童康复服务办理流程申请材料
111 |
112 | 材料1:诊断证明材料
113 | 材料2:湖北省残疾儿童康复救助申请审批表(有标准文本)
114 |
115 | ## 4. 残疾儿童康复服务办理流程流程特征
116 |
117 | 简化材料:原需4项材料,现申请人只需提交2项
118 | 部门协作:2项材料(中华人民共和国居民身份证、居民户口簿)通过部门共享获取
119 | 标准化:使用标准文本申请审批表
120 | 高效办理:受理环节仅需1小时
--------------------------------------------------------------------------------
/docs/article/code/2025-0306-ag.md:
--------------------------------------------------------------------------------
1 | - 记录大盘涨跌幅和成交量
2 | - 记录最低点和最高点
3 | - 记录涨幅最好的三个板块
4 | - 看看自己股票的涨跌幅度
--------------------------------------------------------------------------------
/docs/article/code/2025-04-12-anythingllm.md:
--------------------------------------------------------------------------------
1 | ## 初始化本地环境
2 | - https://blog.csdn.net/Zhangmaoyang/article/details/146253209
3 |
4 | - 前端
5 | - yarn dev:frontend
6 | - http://localhost:3000/
7 | - root admin!!!???
8 | - 后端
9 | - yarn dev:server
10 | - http://localhost:3001/api
11 |
12 | - 文档收集器
13 | - yarn dev:collector
14 | - swagger
15 | - http://localhost:3001/api/docs/
16 |
17 | ## 查看端口占用
18 | - netstat -ano | findstr :3000
19 |
20 | - 再来查看具体的应用
21 | - tasklist | findstr 48352
22 | 通过任务管理器中的进程杀死即可
23 |
24 |
25 | ## 向量数据库客户端
26 | - https://github.com/zilliztech/attu
27 | - 模糊查询 metadata["title"] like "%财务%"
28 |
29 | ## ollama 命令
30 | ```
31 | // 列出所有的模型
32 | ollama ls
33 |
34 | // 正在运行的模型
35 | ollama ps
36 |
37 | // 查看ollama服务运行状态
38 | systemctl status ollama
39 |
40 | // 如果停止了服务 重新开启服务
41 | ollama serve
42 |
43 | ```
44 |
45 |
46 |
47 | ## docker与宿主机器中拷贝文件
48 | ```
49 | // 宿主机器到docker容器
50 | sudo docker cp yarn.lock 8aa8db19bbde:/app/yarn.lock
51 |
52 | // docker容器到宿主机器
53 | sudo docker cp 8aa8db19bbde:/app/yarn.lock lqm/
54 | ```
--------------------------------------------------------------------------------
/docs/article/code/2025-04-15-vue.md:
--------------------------------------------------------------------------------
1 | ## server-ui升级
2 | - 删除当前依赖 rimraf node_modules
3 | - 删除当前依赖 yarn.lock
4 | - nvm ls 切换node版本
5 |
6 | ## 开始升级
7 | yarn add @vue/cli@latest --ignore-engines
--------------------------------------------------------------------------------
/docs/article/code/2025-04-18-ai-proxy.md:
--------------------------------------------------------------------------------
1 | ## 项目地址
2 | ```
3 | https://github.com/egoist/ai-proxy
4 | ```
5 | ## 如何使用
6 | ```
7 | git clone xxxx
8 | ```
9 |
10 | ## 创建镜像
11 | 到项目根目录
12 | ```
13 | # 1. 创建镜像
14 | docker build -t ai-proxy .
15 |
16 | # 2. 运行镜像
17 | docker run -d -p 3333:3000 --name ai-proxy-container ai-proxy
18 |
19 | # 3. 访问
20 | http://localhost:3333
21 |
22 | # 4. 接口调用是
23 | http://localhost:3333/generativelanguage/v1beta
24 |
25 | # 5. tailscale启动
26 |
27 | # 6. 云服务器访问
28 |
29 | # 7. xAi测试地址
30 | - https://docs.x.ai/docs/tutorial#the-hitchhikers-guide-to-grok
31 | - https://ai.google.dev/gemini-api/docs?hl=zh-cn#rest
32 | ```
33 |
34 |
--------------------------------------------------------------------------------
/docs/article/code/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: JavaScript 性能优化技巧
3 | description: 探索如何优化 JavaScript 代码,提高网站性能。
4 | keywords: JavaScript, 性能优化, 编程
5 | head:
6 | - - meta
7 | - name: keywords
8 | content: JavaScript, 性能优化, 编程
9 | ---
10 |
11 | ## JavaScript
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/docs/article/daily/2021-08.md:
--------------------------------------------------------------------------------
1 |
2 | ## 8 月 28 日
3 |
4 | - 241 延迟加载组件
5 | - https://blog.csdn.net/duninet/article/details/119701225
6 |
7 | ## 8 月 26 日
8 |
9 | - 240 vue element ui table 多个字段一起排序
10 | - https://segmentfault.com/a/1190000022538605
11 | - https://blog.csdn.net/weixin_36894745/article/details/109443811
12 |
13 | ## 8 月 18 日
14 |
15 | - 239 typescript actionMap[value] 报错的检查
16 | - https://blog.csdn.net/beLaity/article/details/108527556
17 |
18 | ## 8 月 14 日
19 |
20 | - 238 生成 shortid 短 id
21 | - https://github.com/dylang/shortid
22 | - 237 滴滴团队 PC 和 H5 可配置化前端组件库
23 | - https://github.com/epage-team/epage-vant
24 | - https://github.com/epage-team/epage-iview
25 | - https://github.com/didi/epage
26 | - 236 vue3 vue-dragger
27 | - https://github.com/SortableJS/vue.draggable.next
28 | - 235 vue3 vue-drag-resize
29 | - https://github.com/kirillmurashov/vue-drag-resize/tree/vue3
30 |
31 | ## 8 月 9 日
32 |
33 | - 234 vue3 3.2.1 版本 defineEmits 定义事件问题
34 | - https://zhuanlan.zhihu.com/p/386919557
35 | - 233 vue3 vite2 打包资源文件配置
36 | - https://blog.csdn.net/weixin_47021806/article/details/118697540
37 |
38 | ## 8 月 8 日
39 |
40 | - 232 bash source 命令行的使用
41 | - https://www.cnblogs.com/shuiche/p/9436126.html
42 |
43 | ## 8 月 7 日
44 |
45 | - 231 bash 数组循环便利 (关联数组,可以通过 key 访问)
46 | - https://blog.csdn.net/weixin_39883129/article/details/113317457
47 | - https://github.com/wangdoc/bash-tutorial/blob/master/docs/array.md
48 |
49 | ## 8 月 6 日
50 |
51 | - 230 shell 脚本 while
52 | - 229 前端项目编译的时候发生,warning [mini-css-extract-plugin] warning Conflicting order
53 | - https://github.com/vuejs/vue-cli/issues/3771
54 | - vue.config.js 中设置 css
55 | ```javascript
56 | // vue.config.js
57 | module.exports = {
58 | css: {
59 | extract: { ignoreOrder: true },
60 | },
61 | };
62 | ```
63 |
64 | ## 8 月 5 日
65 |
66 | - 228 vue.config.js extenals 设置
67 | - https://blog.csdn.net/weixin_38107457/article/details/106490372
68 |
--------------------------------------------------------------------------------
/docs/article/daily/2021-09.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ## 9 月 29 日
5 |
6 | - 259 display inline-block 和 block 和 inline 之间的区别
7 | - https://blog.csdn.net/xuanwugang/article/details/80254401
8 | - https://www.cnblogs.com/brainworld/p/6693531.html
9 |
10 | ## 9 月 28 日
11 |
12 | - 258 go 环境搭建
13 | - https://www.cnblogs.com/htc524/p/12616839.html
14 |
15 | ## 9 月 27 日
16 |
17 | - 257 vue3 onBeforeRouterEnter
18 | - https://www.jianshu.com/p/67f882a39d78
19 |
20 | ## 9 月 26 日
21 |
22 | - 256 storyBook
23 | - https://github.com/storybookjs/storybook/
24 |
25 | ## 9 月 24 日
26 |
27 | - 255 自定义表单组件封装
28 | - https://v2.formilyjs.org/zh-CN/guide/quick-start
29 |
30 | ## 9 月 22 日
31 |
32 | - 254 tab 菜单切换
33 | - https://github.com/buqiyuan/vite-vue3-admin
34 | - 253 数据权限设计
35 | - https://www.cnblogs.com/yubaolee/p/DataPrivilege.html
36 |
37 | ## 9 月 21 日
38 |
39 | - 252 nuxtjs.cn
40 | - https://www.nuxtjs.cn/
41 | - 251 css modules
42 | - https://www.cnblogs.com/rynxiao/p/9538058.html
43 | - 250 taro
44 | - https://b2nil.github.io/taro-ui-vue3/
45 | - https://github.com/b2nil/taro-ui-vue3/
46 |
47 | ## 9 月 18 日
48 |
49 | - 249 C#调用 Web Api 接口的类库 Flurl
50 | - https://flurl.dev/
51 |
52 | ## 9 月 11 日
53 |
54 | - 248 vue 可视化技术分析
55 | - https://github.com/woai3c/visual-drag-demo
56 | - 247 vue drag 样例
57 | - https://www.cnblogs.com/yalong/p/10036463.html
58 |
59 | ## 9 月 9 日
60 |
61 | - 246 video 标签弹窗层级控制
62 | - https://www.cnblogs.com/shimily/articles/12750055.html
63 | - 245 vite-qiankun 插件
64 | - https://github.com/tengmaoqing/vite-plugin-qiankun
65 |
66 | ## 9 月 4 日
67 |
68 | - 244 数据大屏可视化配置
69 | - https://github.com/dongsuo/vue-data-board
70 | - https://v11nlab.com/
71 |
72 | ## 9 月 3 日
73 |
74 | - 243 video 标签监听事件
75 | - https://www.cnblogs.com/yuanmo/p/12795104.html
76 | - 监测视频播放了多久,方便记录下次进来继续播放 https://www.jc2182.com/html/html-audio-video-dom-timeupdate-event.html
77 |
78 | ## 9 月 1 日
79 |
80 | - 242 video.js 指定视频某个播放时间进行播放
81 | - https://www.cnblogs.com/zhuwenjun/p/4925372.html
82 |
--------------------------------------------------------------------------------
/docs/article/daily/2021-11.md:
--------------------------------------------------------------------------------
1 |
72 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-01.md:
--------------------------------------------------------------------------------
1 | ## 1月31日
2 | - 简单整理vuepress 文档目录
3 | ## 1月30日
4 | - 简单整理未来计划的雏形,对2022年规划的具体内容进行了调整,可以说是要做的事情更加具体了
5 | - 29日和30日早上看了一部电影:致命魔术(军总推荐的)
6 | - vuepress初步搭建,准备把2022仓库的文档移植到vuepress上
7 | ## 1月29日
8 | - 菜单管理功能测试以及异常修复,基本功能已经有了
9 | - TODO 后期可考虑复制、粘贴、导入、导出、批量删除等,暂时可以先不做
10 | ## 1月28日
11 | - 实现新增(根菜单和子系统)、删除(要判断是否有子菜单,请先删除子菜单)
12 | ## 1月27日
13 | - 实现菜单管理的 新增、编辑、修改和列表、以及递归实现列表转换树
14 | ## 1月26日
15 | - 简单整理将要做的东西,react实现工具,vue来对接工具实现业务,.net core 实现API
16 | ## 1月25日
17 | - 将.net core接口设置为可关闭命令行窗口运行
18 | ## 1月24日
19 | - 流程类型:列表,添加、编辑、删除已调用接口
20 | ## 1月22日-1月23日
21 | - .net core EF repository 模式搭建 (上下文一致的问题待处理)
22 | ## 1月21日
23 | - mac下链接Linux
24 | - fileZilla 上传文件
25 | - vs2022预览版 安装到mac 安装.net 6.0
26 | ## 1月16日 - 1月20日
27 | - logicflow 流程图和流程数据进行关联
28 | ## 1月15日
29 | - EFCore 使用
30 | - https://docs.microsoft.com/zh-cn/ef/core/cli/powershell
31 | - mysql https://docs.microsoft.com/zh-cn/ef/core/providers/?tabs=dotnet-core-cli
32 | - EFCore 可以链接MySql,以及通过数据表生成实体
33 | - 用户管理简单的几个接口实现
34 | ## 1月14日
35 | - yarn build 已打包编译,并且配置nginx 后通过代理可访问接口
36 | - 准备添加form表单配置前端页面
37 | ## 1月13日
38 | - 菜单管理和角色管理前端页面的添加
39 | ## 1月12日
40 | - 用户管理和字典管理页面的添加
41 | ## 1月11日
42 | - 指标管理页面布局调整
43 | ## 1月10日
44 | - 指标管理页面布局调整
45 | - 简单修改布局调整
46 | ## 1月9日
47 | - svg小图标制作工具 https://mastergo.com/file/49597598216304
48 | - 前端打包待处理(api请求处理)
49 | ## 1月8日
50 | - 将.net core由5.0升级到6.0
51 | - 将前端项目和后端项目 放到一个git仓库
52 | ## 1月7日
53 | - 调整指标管理的左侧树接口逻辑,以及联动右侧的表单数据
54 | ## 1月6日
55 | - 后端接口可发布到linux外网访问, 前端react项目待部署到外网环境
56 | - 指标接口可调用,开始处理页面和接口之间的逻辑了
57 | ## 1月5日
58 | - 前端项目开发环境中可设置接口代理地址,调用接口
59 | - 后端项目目前可调用指标定义接口,本地可发布,可访问,待发布到linux外网可访问
60 | ## 1月4日
61 | - 腾讯云 centos 下安装mysql https://www.cnblogs.com/wanjinliu/p/15234443.html
62 | - 查看mysql默认密码命令 https://www.cnblogs.com/joker-ma/p/14925474.html
63 | - .net 6.0 可链接marriadb数据库
64 | ## 1月2日
65 | - 后端考虑继续使用.net core (.net 6)
66 | - 前端考虑使用react+antd.pro 搭建指标配置工具
67 | ## 1月1日
68 | - 参考tally.so form表单发布和后台查看反馈
69 | - 以产品为导向来学习前端技术,不断优化产品的同时来学习技术。
70 | - 准备做几个小工具,看如何切入,通过技术进行实现。
71 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-03.md:
--------------------------------------------------------------------------------
1 |
2 | ## 3月31日
3 | -[x] 部署 jenkins
4 | - https://juejin.cn/post/6887751398499287054
5 | - h5端 list列表中item布局通过拖拽实现,待继续
6 | ## 3月30日
7 | - vue3 拖拽
8 | https://github.com/kirillmurashov/vue-drag-resize/tree/v2.0.0#props
9 | ## 3月26日
10 | - 微信公众号录制语音后,还要通过Media进行下载,上传到本地自己的服务器
11 | ## 3月25日
12 | - 将.net core服务由腾讯云切换到华为云
13 | ## 3月24日
14 | - 微信公众号将录音保存到本地服务器
15 | - https://juejin.cn/post/6885163128821121032
16 | - taro nutui picker有晃动的问题,暂时先用微信原生进行开发
17 | - taro nutui upload 上传组件暂时有异常,通过小程序跳转到h5,h5再返回到页面吧
18 | ## 3月22日
19 | - taro vue3 mini-program 小程序撸一小波
20 | ## 3月21日
21 | - vscode插件 vue3-snippets-for-vscode
22 | ## 3月20日
23 | - 将form表单 FormRule、FormTextItem、 FormNumberItem、 FormItemCommon
24 | - 修改 text、number两个字段的拆分和typescript化,待继续优化和处理其他组件
25 | ## 3月19日
26 | - 在线服务或自部署服务 https://xdts.xdocin.com/
27 | - 在线预览服务 http://view.officeapps.live.com/op/view.aspx?src=文档url
28 | - https://dvs-dev.sunlight-tech.com/test.docx
29 |
30 | - 自己搭建officeapps
31 | - https://www.cnblogs.com/littlehb/p/10572984.html
32 | - iframe 细节处理
33 | - https://segmentfault.com/a/1190000004502619
34 | - officeapp两种模式、通过接口转换成html
35 | - https://www.cnblogs.com/oucbl/p/14185437.html
36 | -
37 | ## 3月18日
38 | - 今天周五居家办公五天了
39 | - 居家办公好处
40 | - 1、小孩可以有更多的时间看到你,休息的时候可以多跟他玩玩,或者下去测核酸的时候
41 | - 2、居家办公,省去了交通的时间,吃饭加上地铁的时间省去了两个半小时
42 | - 3、如果规划比较合理的话,效率还是蛮高的
43 | - 4、感觉休息的时间更多一些
44 | - 5、一天的时间,整体更加自由一些
45 | ## 3月15日
46 | - 居家办公第二天,vue3 qiankun问题还真是处理不了,mac环境的差异没找到问题点。
47 | -
48 | ## 3月14日
49 | - 全深圳居家隔离第一天,公司环境和家里环境 有差异 vue3 qiankun
50 | - docx 预览 excel预览 https://kuangyx.cn/
51 | - docx https://github.com/zVolodymyr/docxjs
52 | - excel https://github.com/exceljs/exceljs
53 | - 导出Excel https://juejin.cn/post/7030291455243452429
54 |
55 | ## 3月11日
56 | - 二进制的四个运算符 & http://c.biancheng.net/view/5469.html
57 | ## 3月5日
58 | - 开始 微信小程序 vue3 typescript taro nutui mini-program
59 | ## 3月4日
60 | - 2.5.1.012 为最后的tag,实际版本号为013
61 | - docker 学习笔记
62 | - https://github.com/LiangJunrong/document-library/tree/master/%E7%B3%BB%E5%88%97-%E5%89%8D%E7%AB%AF%E8%B5%84%E6%96%99/Node/Node%20%E5%BA%94%E7%94%A8%E9%83%A8%E7%BD%B2/Docker
63 | - H5中课程可根据用户权限进行获取,暂时通过直接操作数据库进行
64 | ## 3月3日
65 | - typescript 在线转换为JavaScript https://www.typescriptlang.org/play
66 | - EFCore 关联查询两个上下文 https://www.cnblogs.com/myzony/p/11863489.html
67 | ## 3月2日
68 | - 用户表接口变更和用户UI调用接口
69 | - - EFCore按需修改 https://www.cnblogs.com/OpenCoder/p/9769269.html
70 | ## 3月1日
71 | - 用户表数据api修改
72 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-05.md:
--------------------------------------------------------------------------------
1 | ## 5月29日
2 | - 科学上网 https://github.com/Alvin9999/new-pac
3 | - nodejs中引入 ts ts-node
4 | - https://github.com/TypeStrong/ts-node 搜索experimentalResolver
5 | - 引入ts文件 import {} from './xxx.mjs' 就是mts
6 | ## 5月21日
7 | - vueuse
8 | - https://vueuse.org/core/usestorage/#usage
9 | - vue3 keepalive
10 | - https://segmentfault.com/a/1190000041459646
11 | - https://juejin.cn/post/7094910768285483039
12 | ## 5月19日
13 | - vant list 列表上滑问题
14 | - https://juejin.cn/post/6939349504126615560
15 | - https://blog.csdn.net/qq_41877050/article/details/121740002
16 | - https://juejin.cn/post/6875339665772609550
17 | ## 5月18日
18 | - vue3 hooks
19 | - https://juejin.cn/post/7083401842733875208
20 | ## 5月17日
21 | - github多人协作
22 | - https://blog.csdn.net/qq_45804132/article/details/118669698
23 | ## 5月13日
24 | - pnpm monorepo
25 | - https://juejin.cn/post/6964328103447363614
26 | - https://github.com/Innei/pnpm-workspace-monorepo
27 | ## 5月12日
28 | - pnpm workspaces
29 | - https://juejin.cn/post/7071992448511279141
30 | - pnpm官网
31 | - https://pnpm.io/zh/installation
32 | - 正则表达式
33 | - https://juejin.cn/post/6844903781839142926
34 | ## 5月10日
35 | - npm-run-all https://github.com/mysticatea/npm-run-all/blob/master/docs/npm-run-all.md
36 | - npm 玩法详解 https://www.ruanyifeng.com/blog/2016/10/npm_scripts.html
37 | - https://juejin.cn/post/6844903879943913485
38 | - vscode中修改 git bash 为默认命令行工具 https://zhuanlan.zhihu.com/p/365625019
39 | - exports 关键字 https://www.jianshu.com/p/094797a1e299
40 | - https://juejin.cn/post/7087083454059249701
41 | ## 5月2日
42 | - npm run build
43 | - https://juejin.cn/post/7078924628525056007
44 | - pnpm + lerna + ts
45 | - https://juejin.cn/post/7043998041786810398
46 | - rollup打包组件库
47 | - https://mp.weixin.qq.com/s/LqdE6FP7cnoCBs3TYF3CCA
48 | - npm 并行运行脚本
49 | - https://juejin.cn/post/6917533974285778957#heading-13
50 | - https://juejin.cn/post/6854573216363446286
51 | ## 5月1日
52 | - 打印
53 | - https://github.com/Power-kxLee/vue-print-nb#vue3-version
54 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-06.md:
--------------------------------------------------------------------------------
1 |
2 | ## 6月21日
3 | - blob https://juejin.cn/post/6901790184841412622
4 | ## 6月20日
5 | - 程序员副业
6 | - https://github.com/easychen/lean-side-bussiness
7 | ## 6月17日
8 | - vue- email - editor 是个类库可以调用有空调用一下
9 | - vue2的组件,看看行不行,行的话 改成vue3
10 | - https://github.com/unlayer/vue-email-editor
11 | - https://vue-email-editor-demo.netlify.app/
12 | ## 6月16日
13 | - 浏览器回退 back() go()
14 | - https://juejin.cn/post/7090942617868828679#heading-2
15 |
16 | ## 6月15日
17 | - 一个按钮一键部署
18 | - https://juejin.cn/post/7070921715492061214
19 | - https://github.com/pouchdb/pouchdb
20 | - indexdb
21 | - https://github.com/localForage/localForage
22 | - 大致了解
23 | ## 6月14日
24 | - 各种题目
25 | - https://github.com/sisterAn/JavaScript-Algorithms
26 | - v8
27 | - docs https://v8.dev/docs
28 | - tools https://v8.github.io/tools/head/
29 | - v8日志 https://www.jianshu.com/p/fba0101096ea
30 | - https://www.jianshu.com/p/4f2e2416421a
31 | - v8 调试笔记 http://t.zoukankan.com/snip3r-p-12506768.html
32 | - https://github.com/plctlab/v8-internals
33 | ## 6月8日
34 | - element-plus el-date-picker 选中时分秒 无效的问题
35 | - https://github.com/element-plus/element-plus/issues/3923
36 | - https://stackoverflow.com/questions/71221327/vue3-typescript-ts2345-argument-of-type-router-is-not-assignable-to-parame
37 | ## 6月6日
38 | - monorepo
39 | - https://www.robinwieruch.de/javascript-monorepos/#what-is-a-monorepo
40 | ## 6月2日
41 | - vscode插件 Preview.js
42 | - https://previewjs.com/docs/platforms/vscode
43 | - lerna重新开始更新了
44 | - https://github.com/lerna/lerna
45 | - release-it
46 | - https://github.com/release-it/release-it
47 | - Vue.js发布流程
48 | - https://juejin.cn/post/6997943192851054606#heading-28
49 | - standard-version https://github.com/conventional-changelog/standard-version
50 | - semver
51 | - https://github.com/semver/semver
52 | - https://juejin.cn/post/7025606860300353566
53 | - keepalive
54 | - https://github.com/Zippowxk/stack-keep-alive
55 | ## 6月1日
56 | - monorepo
57 | - https://juejin.cn/post/7102452341210611720
58 | - https://juejin.cn/post/6972139870231724045#heading-4
59 | - jenkins
60 | - https://juejin.cn/post/6995588010934796302
61 | - https://juejin.cn/post/7102360505313918983
62 | - keepalive
63 | - https://github.com/Zippowxk/stack-keep-alive
64 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-07.md:
--------------------------------------------------------------------------------
1 |
2 | ## 7月31日
3 | - 虚拟滚动列表了解一下
4 | - https://juejin.cn/post/7086359708507832356
5 | - https://juejin.cn/post/6844904184689475592#heading-1
6 | - https://juejin.cn/post/6844903982742110216
7 | ## 7月30日
8 | - git tag标签
9 | https://juejin.cn/post/6917429261296992269
10 |
11 | ## 7月23日
12 | - tree list 命令
13 | ## 7月22日
14 | - 代码编辑器
15 | - https://github.com/wanglin2/code-run
16 | ## 7月20日
17 | - tree list 命令
18 | - Chrome插件
19 | - https://github.com/GoogleChrome/chrome-extensions-samples
20 | - https://juejin.cn/post/7121653349669142565?share_token=f4aa0701-c07a-4591-a86c-76c6d85a3b78
21 | - https://juejin.cn/post/6844903793176379399#heading-6
22 | - https://developer.chrome.com/docs/extensions/mv3/devtools/
23 | ## 7月18日
24 | - 查看网站技术栈
25 | - https://bundlescanner.com/
26 | ## 7月16日
27 | - https://viteconf.org/
28 | - 浏览器 进程详解
29 | - https://segmentfault.com/a/1190000041404464
30 | - https://www.cnblogs.com/gaokai/p/15613916.html
31 | ## 7月14日
32 | - bun了解一下
33 | - https://juejin.cn/post/7120179470136246309
34 | ## 7月12日
35 | - jest 使用import报错
36 | - https://juejin.cn/post/6844903776579485709
37 | ## 7月11日
38 | - jest了解一下小书一本
39 | - https://mp.weixin.qq.com/s/TiYdr0ux5B06mjtQyIRI7g
40 | - 数学了解一下
41 | ## 7月8日
42 | - 原型和原型链了解一下 https://juejin.cn/post/7007416743215759373
43 | ## 7月7日
44 | - 7227 18:00
45 | - 了解调用栈,可以更好的熟悉JavaScript的运行机制。这样在使用JavaScript编写代码的时候就能更好的写出更稳定的代码。
46 | - 用最通俗的语言,来讲解JavaScript基础,通过谁都能看的懂的代码小demo,让你熟悉了解那些晦涩难懂的知识点,如果我写的你没懂欢迎来啪啪啪的喷我,我会不断改进我的方式。
47 | ## 7月5日
48 | - 6500
49 | ## 7月4日
50 | - 5743
51 | - 鼠标点击
52 | - https://whatpulse.org/downloads
53 | - zsh 有点香
54 | - https://www.zhihu.com/question/21418449/answer/300879747
55 | - https://lxchuan12.gitee.io/oh-my-zsh/#%E5%AE%89%E8%A3%85-oh-my-zsh
56 | - https://gitee.com/vacrain/steppp-doc/blob/main/9-vacrain/2022-07.md#shell-%E6%8D%A2%E6%88%90-zsh
57 | - 川神推荐的正则
58 | - https://juejin.cn/post/6844903501034684430
59 | ## 7月3日
60 | - 图片封面如何的制作 https://www.canva.cn/
61 | ## 7月2日
62 | - 事件循环 https://juejin.cn/post/6844904079353708557
63 | ## 7月1日
64 | - 为什么 Vue2 this 能够直接获取到 data 和 methods
65 | - https://juejin.cn/post/7082984422516981796
66 | - https://juejin.cn/post/7010920884789575711
67 | - vue2.7 今天更新了
68 | - https://juejin.cn/post/7115361618774622216#comment
69 | - window下终端设置
70 | - https://gitee.com/vacrain/steppp-doc/blob/main/9-vacrain/2022-07.md#%E7%BB%88%E7%AB%AF%E6%8D%A2%E6%88%90-zsh
71 |
--------------------------------------------------------------------------------
/docs/article/daily/2022-10.md:
--------------------------------------------------------------------------------
1 | ## 10月29日
2 | - 算法
3 | - https://www.programmercarl.com/
4 | -
5 | ## 10月28日
6 | - 算法复杂度
7 | - https://juejin.cn/post/6999307229752983582
8 | ## 10月27日
9 | - 压缩图片
10 | - https://tinypng.com/
11 | ## 10月24日
12 | - .Net Core Swagger
13 | - https://www.cnblogs.com/fanfan-90/p/16795600.html
14 | - https://github.com/domaindrivendev/Swashbuckle.AspNetCore
15 | - https://www.cnblogs.com/xiaxiaolu/p/16247490.html
16 | ## 10月21日
17 | - webpack 编译速度优化
18 | - https://juejin.cn/post/6887863430510968839
19 | - mysql聚集索引和非聚集索引
20 | - https://m.php.cn/article/489392.html
21 | - 获取尺寸
22 | - https://blog.csdn.net/tentime/article/details/125240886
23 | - innerWidth 浏览器窗口可视区宽度(不包括浏览器控制台、菜单栏、工具栏)
24 | - innerHeight 浏览器窗口可视区高度(不包括浏览器控制台、菜单栏、工具栏)
25 | - document.body.clientWidth
26 | - document.body.clientHeight
27 | ## 10月18日
28 | - fs-extra 清空文件夹 以及特定目录不清空的脚本处理
29 | ## 10 月14日
30 | - 前端监控体系
31 | - https://github.com/miracle90/monitor
32 | ## 10月9日
33 | - nodejs 浏览器缓存实例解析
34 | - https://juejin.cn/post/6844904116972421128
35 | - nginx 浏览器缓存
36 | - https://juejin.cn/post/6844903734644834318
37 | - https://juejin.cn/post/7050004962155167781
38 | ## 10月8日
39 | - 如何修改node_modules中的文件
40 | - https://juejin.cn/post/6844904163558555662
41 | - vue-router 路由
42 | - https://juejin.cn/post/7150794643985137695
--------------------------------------------------------------------------------
/docs/article/daily/2023-02.md:
--------------------------------------------------------------------------------
1 | ## 2月28日
2 | - edge dev 下载地址
3 | - https://www.microsoft.com/zh-cn/edge/download?form=MA13FW
4 | - 初步完成视频剪辑的资料整理
5 | - 课程前端调用一下go 接口
6 | ## 2月27日
7 | - 将视频剪辑的资料进行整理
8 | ## 2月24日
9 | - 通过.net core 爬取课程
10 | ## 2月23日
11 | - 查看nginx错误日志
12 | - tail -f /var/log/nginx/error.log
13 | ## 2月22日
14 | - 崔学社
15 | - https://learn.cuixueshe.com/
16 | - centos dotnet 安装
17 | - https://blog.csdn.net/suwei825/article/details/123107697
18 | ## 2月21日
19 | - go 登录 token 可以生成
20 | ## 2月20日
21 | - 开发微信小程序
22 | - react
23 | - taro
24 | - vantui https://github.com/AntmJS/vantui
25 | ## 2月17日
26 | - go api 统一返回实体
27 | - go token中间件
28 | - https://www.cnblogs.com/haiyux/p/15162758.html
29 | ## 2月16日
30 | - go swagger 搭建完毕,并可以部署linux
31 | ## 2月15日
32 | - curl post测试接口, https://juejin.cn/post/7020291189832155166
33 | ```
34 | curl -d '{"name": "tigeriaf", "password": "123"}' -H 'Content-Type: application/json'
35 | curl -d '{"name": "测试", "state": "测试", "phone": "131", "email": "@qqq","address":"地址"}' -X POST http://localhost:3002/user/add
36 | curl -d '{"name": "测试", "state": "测试", "phone": "131", "email": "qqq", "address": "地址"}' -X POST http://localhost:3002/user/add
37 | curl -d '{"name": "测试", "state": "测试", "phone": "131", "email": "qqq", "address": "地址"}' -H 'Content-Type: application/json' http://localhost:3002/user/add
38 | ```
39 | ## 2月14日
40 | - 搭建了go简易开发框架
41 | - 可通过路由配置api
42 | - 可链接mysql
43 | ## 2月13日
44 | - 计划
45 | - go语言继续学一波,争取写出api,连上数据库产出一个小模块
46 | - 完成
47 | - go语言的并发读写
48 | - https://juejin.cn/post/7189459383041359933#heading-1
49 | - 指针
50 | - https://juejin.cn/post/717384143445635894
51 | - gorm
52 | - https://juejin.cn/post/6844903854006337543
53 | - https://juejin.cn/post/7078279187471679518#heading-15
54 | - typescript 书籍
55 | - https://github.com/xcatliu/typescript-tutorial
56 | - https://ts.xcatliu.com/introduction/what-is-typescript.html
57 | ## 2月10月
58 | - https://chuangzaoshi.com/code
59 | - go小学一波
60 | - go 模块引入详解
61 | - https://juejin.cn/post/7040792078481096717
62 | - 匿名导入 https://juejin.cn/post/6844904167073382408
63 | ## 2月8日
64 | - 年算是过完了,开始搞学习了吧
65 | - linux云服务器搞一个
66 | - 前端面试整理
67 | - 后端面试整理
68 |
--------------------------------------------------------------------------------
/docs/article/daily/2023-04.md:
--------------------------------------------------------------------------------
1 | ## 4月18日
2 | - turbo
3 | - https://juejin.cn/post/7129267782515949575#heading-24
4 | ## 4月6日
5 | - 富文本
6 | - https://github.com/tinymce/tinymce
--------------------------------------------------------------------------------
/docs/article/daily/2023-05.md:
--------------------------------------------------------------------------------
1 |
11 | ## 5月26日
12 | - flow
13 | - https://jerosoler.github.io/drawflow-vue3-example/
14 | - https://vueflow.dev/examples/nodes/
15 | - https://github.com/bcakmakoglu/vue-flow
--------------------------------------------------------------------------------
/docs/article/daily/2023-08.md:
--------------------------------------------------------------------------------
1 | ## 8月14日
2 | - 暂时移除 .gitmodules,取消关联仓库
3 | ```
4 | [submodule "release"]
5 | path = ../release
6 | url = git@code.aliyun.com:dvs-cms/release.git
7 | ```
--------------------------------------------------------------------------------
/docs/article/daily/2023-09.md:
--------------------------------------------------------------------------------
1 | ## 9月1日
2 |
3 | - vue3的状态管理器
4 | https://pinia.vuejs.org/zh/
5 |
6 | - 网课刷课工具
7 | - https://github.com/CodFrm/cxmooc-tools
8 | - https://cx.icodef.com/ 教程
9 |
10 | ## 9月2日
11 | - mjs文件
12 | - https://docs.fileformat.com/zh/web/mjs/
13 |
14 | ## 9月5日
15 | - vite
16 | - https://vitejs.cn
17 | - pnpm
18 | - https://www.pnpm.cn
19 |
20 | - 待处理工作列表
21 | - 小程序菜单权限列表控制
22 | - 小程序乡村治理 家庭成员列表-标签-跳转到h5
23 | - pc common npm link处理
24 | - uni-app android和ios打包
25 | - pc gis 子系统
26 | - 大屏接口变更
27 | - 居民收入计算器
28 | - 数据采集v2迁移到v3/ mp+pc
29 |
30 | - 小程序自动化工具 (微信、qq、百度、快手、抖音、支付宝、uc、夸克)
31 | - https://github.com/Ethan-zjc/multi-mini-ci
32 |
33 | ## 9月7日
34 |
35 | ```
36 | git tag
37 |
38 | // 查看以v3.0.0.0开头的标签列表
39 | git tag -l "v3.0.0.*"
40 |
41 | // 查看以v3.0.0.0开头的标签列表(最新的在最前面)
42 | git tag -l "v3.0.0.*" --sort=-taggerdate
43 | ```
44 |
45 | ## 9月8日
46 | - JavaScript 监测window客户端
47 | - https://blog.csdn.net/weixin_42333548/article/details/125104935
48 |
49 | ## 9月12日
50 | - bun 开发、测试、运行和捆绑 JavaScript 和 TypeScript 项目,目前还不支持window
51 | - https://github.com/oven-sh/bun
52 | - https://juejin.cn/post/7277387014046335010
53 |
54 | ## 9月15日
55 | - nodejs 操作 mysql
56 | - https://github.com/sidorares/node-mysql2/tree/master/documentation/zh-cn
57 |
58 | ## 9月18日
59 | - uni-app 微信开发者小程序更新
60 | - https://blog.csdn.net/heavenz19/article/details/131769542
61 | - https://uniapp.dcloud.net.cn/api/other/update.html#getupdatemanager
62 | - 通过条件编译中的测试更新版本
63 | - https://www.dianjilingqu.com/18980.html
64 | - https://developers.weixin.qq.com/miniprogram/dev/api/base/update/UpdateManager.html#%E7%A4%BA%E4%BE%8B%E4%BB%A3%E7%A0%81
65 | - app 判断版本更新 https://ask.dcloud.net.cn/article/34972
66 |
67 | ## 9月19日
68 | - 微信小程序转发消息
69 | - https://developers.weixin.qq.com/miniprogram/dev/api/share/wx.updateShareMenu.html
70 | - https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share.html
71 |
72 | - 关闭当前页面
73 | - https://blog.csdn.net/qq_38990451/article/details/115540392
74 |
75 | ## 9月20日
76 | - uni-app 中的 uni_modules的使用
77 | - https://uniapp.dcloud.net.cn/plugin/uni_modules.html#uni-modules
78 |
79 | ## 9月21日
80 | - 获取小程序启动参数
81 | - https://developers.weixin.qq.com/miniprogram/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html
82 | - uniapp 专属request请求
83 | - https://github.com/lei-mu/luch-request
84 |
85 | ## 9月25日
86 | - mac https://www.raycast.com/pro
87 |
88 | ## 9月27日
89 | - docker docker-compose vue前端
90 | - https://juejin.cn/post/7246264754141462589
91 |
92 | ## 9月29日
93 | - ai ui
94 | - https://github.com/leaferjs/ui
--------------------------------------------------------------------------------
/docs/article/daily/2023-12.md:
--------------------------------------------------------------------------------
1 | ## 12月28日
2 | - linux docker alpine apk add xxxx
3 | - https://learn.microsoft.com/zh-tw/dotnet/core/install/linux-alpine
4 | ## 12月26日
5 | - docker官方文档
6 | - https://docs.docker.com/engine/reference/commandline/images/#filter
7 | ## 12月22日
8 | - docker .net8
9 | - https://github.com/dotnet/dotnet-docker
10 | - https://hub.docker.com/_/microsoft-dotnet-aspnet
11 | - https://learn.microsoft.com/en-us/dotnet/core/docker/build-container?tabs=linux&pivots=dotnet-8-0
12 | ## 12月20日
13 | - 数据埋点
14 | - https://github.com/sensorsdata/sa-sdk-miniprogram?tab=readme-ov-file
15 | ## 12月19日
16 | - .net core集成各大平台的身份认证
17 | - https://github.com/mrhuo/MrHuo.OAuth
18 | - nginx 配置将不带www的域名重定向到www的域名
19 | - https://blog.csdn.net/qq_27346503/article/details/108895683
20 | ## 12月11日
21 | - ip生成linux证书
22 | - https://mp.weixin.qq.com/s/qWL6P9jVhuRLk2rg_4vcsw
23 | ## 12月8日
24 | - nginx 配置
25 | ```
26 | // www.baidu.com/wechat/xxxx
27 | ~ ^ 代表匹配开头 /wechat/
28 | location ~ ^/wechat/ {
29 | proxy_pass http://127.0.0.1:12011;
30 | }
31 |
32 | // www.baidu.com/xxx/wechat/xxx
33 | ~ * 代表匹配包含
34 |
35 | location ~ * /wechat/ {
36 | proxy_pass http://127.0.0.1:12011;
37 | }
38 | ```
39 | ## 12月7日
40 | - vs2022设置新增class的修饰符 internal 为public
41 | - C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\ItemTemplates\CSharp\Code\2052\Class
42 | - https://blog.csdn.net/yan_yu_lv_ji/article/details/132676464
43 | ## 12月6日
44 | - 蒲公英app测试 https://www.pgyer.com
45 | - pc 微信扫码登录
46 | - 微信开放平台 https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Authorized_Interface_Calling_UnionID.html
47 | - java 扫码登录https://blog.csdn.net/qq_63358859/article/details/131826717
48 | ## 12月5日
49 | - .net
50 | ## 12月4日
51 | - .net 文档
52 | - https://learn.microsoft.com/zh-cn/dotnet/api/?view=net-8.0
--------------------------------------------------------------------------------
/docs/article/daily/2024-05.md:
--------------------------------------------------------------------------------
1 | ## 5月23日
2 | - 替代宝塔的
3 | - https://1panel.cn/docs/installation/online_installation/
4 | ## 5月21日
5 | - navicat 17破解
6 | - https://github.com/LiJunYi2/navicat-keygen-16V
7 | ## 5月15日
8 | - 内网穿透 https://loophole.cloud/download
9 | ## 5月14日
10 | - win10上安装Arc浏览器
11 | - https://www.freedidi.com/12429/html
12 | - wifi密码查看器
13 | - https://www.magicaljellybean.com/wifi-password-revealer/
14 | ## 5月9日
15 | - window安装make
16 | - 使用 Chocolatey(参考下面的链接)
17 | - https://mp.weixin.qq.com/s/Dgc1xqvin425CL3T-DmXag
18 | ## 5月8日
19 | - window docker desktop 报错
20 | ```
21 | Docker.Core.HttpBadResponseException:
22 |
23 | {"message":"2 errors occurred:\n\t* provisioning docker WSL distros: running wsl-bootstrap version set in main distro: exit status 0xffffffff\n\t* checking if isocache exists: CreateFile \\\\wsl$\\docker-desktop-data\\isocache\\: The network name cannot be found.\n\n"}
24 |
25 | ```
26 | 选择「Switch To Windows Containers」。重新启动Docker
27 |
28 |
--------------------------------------------------------------------------------
/docs/article/daily/2024-06.md:
--------------------------------------------------------------------------------
1 | ## 6月28日
2 | - h5转app
3 | - https://median.co/
4 | ## 6月24日
5 | - 分布式事务 CAP
6 | - https://www.cnblogs.com/savorboard/p/distributed-system-transaction-consistency.html
7 | ## 6月7日
8 | - 麒麟操作系统下载
9 | - https://sx.ygwid.cn:4431/
--------------------------------------------------------------------------------
/docs/article/daily/2024-07.md:
--------------------------------------------------------------------------------
1 | ## 7月29日
2 | - 通过Mysql 存储过程批量插入测试数据
3 | ```
4 | CREATE DEFINER=`root`@`localhost` PROCEDURE `batch_insert_test`()
5 | BEGIN
6 | #Routine body goes here...
7 | DECLARE i INT DEFAULT 101;
8 | DECLARE max_count INT DEFAULT 50000; -- 设定要插入的行数
9 |
10 | WHILE i <= max_count DO
11 | INSERT INTO `dvsdb30`.`pcs2403_householdcode` (`id`, `areaid`, `hbh`, `pid`, `nf`, `hzxm`, `hzxb`, `hzzjlx`, `zjhm`, `hzidCard`, `hzmz`, `hzzzmm`, `hlx`, `jcdxlx`, `jtrks`, `lxdh`, `createby`, `createtime`, `updateby`, `updatetime`, `zrcmc`, `ndrks`, `sfcyh`) VALUES (CONCAT('a1e934c1-b82b-40db-a716-b106a2eb5bcd-', i), '1641459739483312128', NULL, NULL, 202403, '百瑞', '1', '01', '', '', '100A09001', NULL, '100B02001', NULL, 3, NULL, '1749713533467234304', '2024-03-29 19:26:46', '1749713533467234304', '2024-04-07 11:03:50', NULL, NULL, '1');
12 |
13 | SET i = i + 1;
14 | END WHILE;
15 | END
16 | ```
17 |
18 | ## 7月30日
19 | - 通过C#编写WebAssembly来实现前端导出 但是数据量过大会有out of memory的问题
20 |
21 | ## 7月31日
22 | - ExcelDataReader C# 读取Excel文件 大文件的excel节省服务器的内存使用
23 |
24 | ## docker 历史版本
25 | - https://docs.docker.com/desktop/release-notes/
--------------------------------------------------------------------------------
/docs/article/daily/2024-08.md:
--------------------------------------------------------------------------------
1 | ## 8月29日
2 | - todo: h5 返回和webview返回 监听的问题
3 | ## 8月23日
4 | - Power Shell 执行脚本策略
5 | - Get-ExecutionPolicy
6 | - Restricted: 不允许运行任何脚本。
7 | - AllSigned: 允许运行由受信任的发布者签名的脚本。
8 | - RemoteSigned: 允许运行本地脚本,且必须对从互联网下载的脚本进行签名。
9 | - Unrestricted: 允许运行所有脚本,但对于从互联网下载的脚本会有警告。
10 | - 设置可运行脚本
11 | - Set-ExecutionPolicy Unrestricted
12 | - 设置只允许运行一次脚本
13 | - powershell -ExecutionPolicy Bypass -File .\install.ps1
14 | ## 8月21日
15 | - uniapp和aar包调用
16 | - https://ask.dcloud.net.cn/article/36284
17 |
18 | - vitepress引入script文件
19 | - https://stackoverflow.com/questions/70687036/is-there-any-way-to-embed-javascript-into-vitepress-markdown-template
20 | ## 8月7日
21 | - 视频播放器
22 | - https://h5player.bytedance.com
23 | - 统计数据
24 | - https://busuanzi.ibruce.info/
25 | ## 8月2日
26 | - 获取公共ip地址
27 | - curl ifconfig.io
28 |
29 | - 获取你当前设备的所有网络接口的 IP 地址
30 | - hostname -I
31 |
32 | ## 8月3日
33 | - Obsitian 安装 Excalidraw
34 | - https://sspai.com/post/90448
35 | - https://blog.csdn.net/weixin_42984235/article/details/139243861 设置字体
36 | - https://www.bilibili.com/read/cv30621060/ 设置字体
--------------------------------------------------------------------------------
/docs/article/daily/2024-09.md:
--------------------------------------------------------------------------------
1 | ## 9月27日
2 | - tree table维护还有一些小问题待考量
3 | # 9月25日
4 | - git bash下设置全局环境变量
5 | ```
6 | // 打开git bash客户端
7 |
8 | // 先查看当前环境变量的配置,比如 $http_proxy
9 | echo $http_proxy
10 |
11 | // 如果为空
12 | nano ~/.bash_profile
13 |
14 | // 文件末尾直接添加
15 | export https_proxy=http://127.0.0.1:7897 http_proxy=http://127.0.0.1:7897 all_proxy=socks5://127.0.0.1:7897
16 |
17 | // 保存退出后,使立即生效
18 | source ~/.bash_profile
19 |
20 | // 然后再次查看环境变量
21 | echo $http_proxy
22 | ```
23 |
24 | - cmd下设置全局环境变量
25 | ```
26 | 我的=> 计算机=>
27 | ```
28 |
29 | # 9月24日
30 | - 基础系统
31 | - sass 版本
32 | - 简易版一户一码
33 | - 一户一码 问卷星
34 | - 一户一码 数据采集+ 流程 + 数据上报 + 审核
35 | - 数据查询、数据统计
36 | - 台账导入功能导出
37 | - 一码多用
38 | - 红白喜事+散装油的硬需求
39 | - pc + 小程序
40 | ## 9月18日
41 | - cmd下
42 | - 查看环境变量 echo %http_proxy%
43 | - 设置环境变量
44 | - set http_proxy=http://127.0.0.1:7897
45 | set https_proxy=http://127.0.0.1:7897
46 | - bash下
47 | - 查看环境变量 echo $HTTP_PROXY
48 | - 设置环境变量
49 | - export https_proxy=http://127.0.0.1:7897 http_proxy=http://127.0.0.1:7897 all_proxy=socks5://127.0.0.1:7897
50 | - PowerShell下
51 | - 查看环境变量 $env:http_proxy
52 | - 设置环境变量
53 | - $env:HTTP_PROXY="http://127.0.0.1:7897"; $env:HTTPS_PROXY="http://127.0.0.1:7897"
54 | ## 9月4日
55 | cron vue3
56 | - https://abichinger.github.io/vue-js-cron/demo.html
57 | ## 9月3日
58 | - 在线figma 模板 https://bentogrids.com/
59 |
60 |
61 | 每年清明节 中秋节 初高中会有一个校园开放日。招生老师您好,是否有一个编程升学。
62 |
63 | 编程升学的政策:五大学科竞赛 信息学奥林匹克嘻嘻学科 特色学科培养 编程班 人工智能 信息特长生 科技特长生
64 |
65 | 国内绝大多数初高中和985大学的编程升学政策通常使用以下术语:
66 | 五大学科竞赛、
67 | 信息学奥林匹克竞赛
68 | 特色学科培养
69 | 编程班计算机班
70 | 人工智能大类、科技素养大类
71 | 信息特长生
72 | 科技特长生
73 |
74 | 家长应该注意这些关键词,特别是在查看学校官方网站、关注学校官方账号以及阅读招生简章和喜报时。重要的是要明白,在国内如果频繁提及"科技特长生"或"白名单赛事",往往表明对当前教育政策缺乏了解。大多数学校的编程升学政策并不使用"科技特长生"这一术语,而且白名单中的大部分比赛实际上并不适用于这些政策。家长们应该对这些术语保持警惕,以避免在孩子的教育规划中做出误判。\
75 |
76 |
77 | 博雅计划
78 | 宁波镇海
79 | 清华姚班
--------------------------------------------------------------------------------
/docs/article/daily/2024-10.md:
--------------------------------------------------------------------------------
1 | ## 10月28日
2 | - https证书自动更新 三个月一次
3 | - https://certbot.eff.org/instructions?ws=nginx&os=pip
4 | - https://github.com/acmesh-official/acme.sh
5 | ## 10月22日
6 | - webp的优势
7 | - https://juejin.cn/post/7195095420396109879?searchId=2024102211420368EFB139497D4CDDEEC3
--------------------------------------------------------------------------------
/docs/article/daily/2024-11.md:
--------------------------------------------------------------------------------
1 | ## 11月22日
2 | - tailwindcss
3 | - 基础篇上 https://juejin.cn/post/7363534953651257353?searchId=20241122152601A2082AD5E7E2308D3546
4 | - 中文官网 https://tailwind.nodejs.cn/docs/height#class-reference
5 | ## 11月19日
6 | - 代码编辑器 Windsurf
7 | - https://codeium.com/
8 | - 11月18日
9 | - 币安api
10 | - https://medium.com/my-blockchain-development-daily-journey/%E4%BD%BF%E7%94%A8-node-js-%E5%92%8C-binance-api-%E5%BB%BA%E7%AB%8B%E4%BA%A4%E6%98%93%E6%A9%9F%E5%99%A8%E4%BA%BA-%E5%B0%87%E6%82%A8%E7%9A%84%E9%9B%BB%E8%85%A6%E8%AE%8A%E6%88%90%E8%B3%BA%E9%8C%A2%E6%A9%9F%E5%99%A8-8fa2cedba8b1
11 | - https://github.com/binance/binance-connector-node
12 | - https://github.com/binance/binance-spot-api-docs
13 | - 如何生成api key
14 | - https://www.binance.com/zh-CN/support/faq/%E5%A6%82%E4%BD%95%E5%9C%A8%E5%B8%81%E5%AE%89%E5%88%9B%E5%BB%BAapi%E5%AF%86%E9%92%A5-360002502072?hl=zh-CN
15 | ## 11月16日
16 | - 开源论坛搭建
17 | - https://www.xiunobbs.cn/thread-6076.htm
18 | - https://gitee.com/Wu_mao/xiunobbs.git
19 | ## 11月14日
20 | - pdf预览 vue2
21 | - https://juejin.cn/post/7356889912127422464?searchId=202411141150045938731574D8F90FDCBB
22 | ## 11月8日
23 | - 谷歌搜索中心
24 | - search.google.com
25 | - cf 域名跳转配置
26 | - https://www.xujiahua.com/9946.html
27 | - 百度搜索中心地址
28 | - https://ziyuan.baidu.com/
--------------------------------------------------------------------------------
/docs/article/daily/2024-12.md:
--------------------------------------------------------------------------------
1 | ## 12月28日
2 | - box-sizing: border-box用处
3 | - 更好的控制占用的空间,防止因添加 padding 或 border 而意外破坏布局
4 | ## 12月27日
5 | - swiper 切换
6 | - https://swiperjs.com/vue
7 | ## 12月25日
8 | - 切换主题
9 | - https://juejin.cn/post/7342527074526019620?from=search-suggest
10 |
11 | ## 12月5日
12 | - composite: "true"
13 | - https://blog.csdn.net/wizardforcel/article/details/140596800
14 | - 找不到模块“@/xxx”或其相应的类型声明。ts(2307)
15 | - https://blog.csdn.net/weixin_43801036/article/details/142524266
16 | ## 12月3日
17 | - 微信多开的方式
18 | - https://cloud.tencent.com/developer/news/1462985
19 | ## 12月2日
20 | - 飞牛Nas系统
21 | - https://www.fnnas.com/
--------------------------------------------------------------------------------
/docs/article/daily/2025-01.md:
--------------------------------------------------------------------------------
1 | ## 微信小程序安全测试
2 | - https://developers.weixin.qq.com/community/develop/doc/0008ea401c89c02cff2d1345051001
3 |
4 | 安全测试可以终止 在微信小程序审核和管理后台
5 |
6 | ## 微信 已停止访问该网页
7 | - 网页包含而已欺诈内容,为维护绿色上网环境,已停止访问。
8 |
9 | 腾讯安全反诈骗实验室
--------------------------------------------------------------------------------
/docs/article/daily/2025-02.md:
--------------------------------------------------------------------------------
1 | ## 2月28日
2 | - chrome浏览器打开闪退的问题
3 | - https://blog.csdn.net/shenmifangke/article/details/136272114
4 | - C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default 删除Secure-Preferences
5 | - 自动发布微信公众号
6 | - https://github.com/OpenAISpace/ai-trend-publish
7 | ## 2月26日
8 | - 页面转场 页面动画
9 | - https://github.com/swup/swup
10 | ## 2月20日
11 | - 埋点
12 | - https://juejin.cn/post/7173945372140797988?from=search-suggest
13 | - https://juejin.cn/post/7156070053635424264?searchId=202502201848375827F828B156EEB9EEC6
14 | ## 2月19日
15 | - 抓取公众号文章列表
16 | - https://github.com/pudongping/mp-vx-insight
17 | - https://github.com/lqqyt2423/wechat_spider
18 | - 通过接口直接获取文章列表
19 | - https://blog.csdn.net/u010522887/article/details/141149403
20 | ## 2月18日
21 | - 转转工
22 | - 1、banner页配置是否要根据村还是直接写死配置,数据在那里配置
23 | - 2、活动的浏览数据如何计算的(进一次就算一次浏览吗?)
24 | - 3、我参与的活动下的历史记录:都有哪些操作是历史记录?
25 | - 4、发布活动时,活动海报图片是多个图片?
26 | - 5、创建活动的时候是不是要有个保存?
27 | - 6、订阅通知是统一在个人中心还是在业务按钮中
28 | - 7、活动即将开始这个消息,是在什么时候进行通知的
29 | - 8、活动开始时间:是不是是个区间(活动开始时间和活动结束时间)
30 | - 9、取消活动了,算是叫什么状态
31 | - 10、个人中心,历史评分(通过每次分数汇总除以评价次数的吗)?
32 | ## 2月10日
33 | - AI 硅基流动(可使用deepseek模型-赠送15元额度)
34 | - https://cloud.siliconflow.cn/i/vBdz7qwF
35 | - https://www.deepseek.com/ 官网,暂时无法api充值
36 | - 纳米搜索 App中可访问deepseek满血大模型
37 | - 查看ai.com 域名归属 https://who.is/rdap/ai.com
38 | - 无问苍穹 https://cloud.infini-ai.com
39 | - 阶跃星辰 https://platform.stepfun.com
40 | - 面壁智能 https://www.modelbest.cn
41 | - 海螺ai MiniMax
42 |
43 | 游戏科学、深度求索、宇树科技、云深处科技、强脑科技和群核科技
44 |
45 | - 机器人
46 | - 云深处科技 四足机器人 https://www.deeprobotics.cn/
47 | - 强脑科技 脑机科技 https://www.brainco.cn/#/
48 |
49 |
--------------------------------------------------------------------------------
/docs/article/daily/2025-04.md:
--------------------------------------------------------------------------------
1 | ## 4月24日
2 | - 百度地图经纬度转换
3 | - https://www.free-api.com/doc/288
4 | - typescript any类型
5 | - https://juejin.cn/post/7342055913426059298
6 | - onlyoffice vue对接
7 | - https://api.onlyoffice.com/zh-CN/docs/docs-api/get-started/frontend-frameworks/vue/
8 | ## 4月23日
9 | - 报错 ResizeObserver loop completed with undelivered notifications
10 | - https://blog.csdn.net/weixin_68443051/article/details/140343081
11 | ## 4月21日
12 | ```
13 | - xftp 上传或者rz命令上传zip压缩包
14 | - unzip xx.zip -d path 解压文件(保证path存在)
15 | ```
16 | ## 4月12日
17 | - 向量数据库
18 | - chora、pinecone、milvus、weaviate
19 | ## 4月11日
20 | - excel在线预览方案
21 | - 基于微软office在线方案 https://juejin.cn/post/7419926107856666624
22 | - LuckyExcel 前端在线预览
23 | - OnlyOffice 后端支持
24 | ## 4月10日
25 | - nginx 开启gzip
26 | - https://juejin.cn/post/7101663374957608974?searchId=20250410165032448A7DD727C773FF1411
27 | - 前端开启文件拆分
28 | - https://juejin.cn/post/7389253841152933899
--------------------------------------------------------------------------------
/docs/article/daily/2025-05.md:
--------------------------------------------------------------------------------
1 | ## 5月16日
2 | - kdiff3 合并冲突
3 | - https://stackoverflow.com/questions/27382944/kdiff3-there-is-a-line-end-style-conflict
4 | ## 5月13日
5 | - element-plus 弹窗报错
6 | - https://blog.csdn.net/m0_68652823/article/details/140226751
7 | ## 5月7日
8 | - kdiff3 中中文显示乱码
9 | - https://blog.csdn.net/qq_33256701/article/details/134250403
--------------------------------------------------------------------------------
/docs/article/daily/2025-06.md:
--------------------------------------------------------------------------------
1 | ## 6月份
2 | - 暂时为空的
--------------------------------------------------------------------------------
/docs/article/daily/install.md:
--------------------------------------------------------------------------------
1 | ## 安装node
2 |
3 | - 1、先找nodejs官网找到对应的版本下载
4 | ```
5 | // 在linux上执行命令查看CPU架构
6 | uname -m
7 |
8 | https://nodejs.org/dist/
9 | ```
10 |
11 | 我这里下载的是node-v18.16.0-linux-x64.tar.gz
12 |
13 | // gz和xz的区别有什么?
14 | // gz是gzip的压缩文件,xz是xz的压缩文件
15 |
16 |
17 | - 2、通过xfpt将文件上传到linux服务器的/root文件夹下
18 |
19 | - 3、解压文件
20 | - tar -xvf node-v12.14.1-linux-x64.tar.gz
21 |
--------------------------------------------------------------------------------
/docs/article/economy/2024-09-18-美元降息潮开启.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/docs/article/economy/2024-09-18-美元降息潮开启.md
--------------------------------------------------------------------------------
/docs/article/economy/2024-11-05-为何比特币多头加倍押注特朗普将再度入主白宫?.md:
--------------------------------------------------------------------------------
1 | 特朗普对于加密货币的态度转变可能对美国的监管环境产生重大影响,并可能改变美国的数字货币未来。
2 |
3 | 还记得特朗普(Donald Trump)称比特币为骗局的时候吗?情况无疑已经转变。这位美国前总统、目前的共和党总统候选人现在已完全改变对加密货币和其他数字资产的态度。获得特斯拉(Tesla)首席执行官马斯克(Elon Musk)的支持后,特朗普若能获得第二个总统任期,可能会改变美国政府的加密货币政策。
4 |
5 | 特朗普为什么会转变态度?这对比特币和其他去中心化数字资产在美国的未来意味着什么?
6 |
7 | 特朗普与加密货币的关系很复杂。在之前担任总统期间,他主要将加密货币视为对美国金融稳定性构成风险。现在,他正推出自己的非同质化代币(NFT)系列,同时自我定位为去中心化金融的捍卫者,反对他现在认为的政府越权行为。
8 |
9 | 特朗普态度的转变似乎不仅仅是赶数字潮流。他的转变与散户投资者对数字资产不断增长的兴趣以及加密货币日益被主流接受的趋势完全一致。他找到了一个最佳结合点,加密货币的自由主义原则能与他改变美国政治生态的口号吻合,尤其是在涉及美国证券交易委员会(Securities and Exchange Commission, 简称SEC)等联邦机构时。
10 |
11 | 说到马斯克,无论你喜欢还是讨厌他,都不能否认他在加密货币世界的影响力。当马斯克发布有关加密货币的推文时,市场就会出现波动。他在监管改革问题上与特朗普的立场一致,为特朗普的竞选纲领增添了强大的亲加密货币色彩。马斯克的影响力可能有助于使加密货币政策正常化,并有可能将创新保留在美国境内,而不是让其流向海外。然而,尽管特朗普与马斯克的联盟登上了引人注目的头条新闻,但加密货币界的兴趣远不止于个性政治。
12 |
13 | 这可以归结为三个实际因素:首先,有明确的政策信号,包括公开反对央行数字货币(CBDC),并承诺缩减联邦机构的权力,尤其是SEC的权力。其次,更广泛的反监管立场与加密货币的自由主义基因完美契合。最后,与将创新推向海外并抑制了国内发展的现状形成鲜明对比。
14 |
15 | 若审视一下当前的监管环境,这种对比就更加清晰了。拜登(Biden)政府对加密货币行业施加了极大压力。在根斯勒(Gary Gensler)的领导下,SEC已对大型加密货币公司大举采取执法行动,称许多加密货币是未注册证券。“扼杀行动2.0”(Operation Chokepoint 2.0)的实施极大地限制了银行与加密货币企业合作的能力,越来越不利于创新。
16 |
17 | 如果民主党赢得2024年美国总统大选,监管前景令加密货币界感到担忧。美国副总统哈里斯(Kamala Harris)选择的顾问包括拜登政府加密货币政策的关键制定者Brian Deese和Bharat Ramamurti,这表明如果民主党总统候选人哈里斯赢得大选,可能会继续实施甚至加强限制性措施。
18 |
19 | 拜登政府的政策对加密货币的影响巨大。去中心化金融行业在其巅峰时期锁定的总价值达到近2,000亿美元,对这样一个年轻的行业来说,这是一项了不起的成就,也强有力地表明去中心化金融行业的经济潜力,假以时日可能与传统金融相匹敌。然而,美国当前的监管立场非但没有拥抱这种创新,反而迫使Coinbase Global (COIN)和Ripple等加密货币行业的主要参与者向海外寻求发展机会。
20 |
21 | 美国与其他全球司法管辖区之间的对比说明了一切。新加坡和迪拜制定了清晰、有利于创新的框架,在保护消费者和实现增长之间取得平衡,而SEC却选择了一种混乱的“执法监管”方式,让企业无所适从,处境脆弱。瑞士的“加密谷”(Crypto Valley)有1,000多家区块链公司,这表明在支持性监管下可能取得的成就。
22 |
23 | 由此造成的经济影响远远超出了加密货币领域。美国失去的不仅仅是加密货币公司,还有高薪科技工作岗位、税收收入,以及可能最关键的——在新兴技术领域的竞争优势。加密货币行业与人工智能(AI)、物联网和Web3的融合意味着,这些影响的范畴远远超出了数字资产,可能会削弱美国在多个高增长行业的地位。
24 |
25 | 与此同时,全球竞争对手正在采取战略举措。中国正在向区块链技术投入大量资源,力求掌控数字金融的未来。欧盟的《加密资产市场监管条例》(Markets in Crypto-Assets Regulation)虽然严格,但至少为企业提供了运营和创新所需的法规清晰度。此外,每个迁往新加坡或迪拜的加密货币创新者带走的不仅仅是就业岗位和税收收入,他们还将自己对金融未来的愿景带到了那些将决定这些技术如何演变的司法管辖区。
26 |
27 | 下一波金融创新浪潮不仅关乎加密货币,还关乎可以为自动化系统提供动力的可编程货币、可以脱离中介机构运作的去中心化金融网络,以及全新的经济模式。那些将自己打造为加密货币创新之家的司法管辖区,不仅会吸引当今的区块链项目,还将成为下一代金融技术的天然试验场。
28 |
29 | 历史为我们提供了一个发人深省的相似案例:正如围绕互联网的早期监管框架帮助确立了美国在数字时代的统治地位一样,如今有关加密货币监管的决定,可能会决定哪些国家将引领下一场技术革命。问题不仅在于加密货币公司将在哪里运营,还在于未来全球经济的基本架构将在哪里设计、测试和启动。
30 |
31 | 这才是应该推动这场对话的现实。金融业的未来正在被编码,每一个监管决定实际上都是在选择,这个未来是由美国的创新和价值观塑造,还是由其他地方书写。
32 |
33 | (本文译自MarketWatch。MarketWatch由《华尔街日报》母公司道琼斯运营,但MarketWatch独立于道琼斯通讯社和《华尔街日报》。)
34 |
35 |
36 |
37 | 原文链接:https://www.wsj.com/articles/cryptobulls-are-doubling-down-on-a-second-trump-presidency-for-this-1-key-reason-29c3190c
--------------------------------------------------------------------------------
/docs/article/economy/2024-11-11-浅谈币圈集中交易类型的风险比对.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: 浅谈币圈 现货/合约/杠杆/期权 几种玩法的风险对比
3 | description: 浅谈币圈 现货/合约/杠杆/期权 几种玩法的风险对比
4 | head:
5 | - - meta
6 | - name: keywords
7 | content: 浅谈币圈,现货,合约,杠杆,期权 几种玩法的风险对比
8 | ---
9 |
10 |
11 | - 质押是如何运作的以及收益来自于哪里?
12 | - https://www.uokon.com/workspace/staking-yield.html
13 | - 三角套利
14 | - https://www.uokon.com/workspace/arbitrage-crypto.html
15 | - 套利的几种方式
16 | - https://www.jinse.cn/bitcoin/243380.html
17 | - 赚取合约资金费率
18 | - https://www.1point3acres.com/bbs/thread-1049833-1-1.html
19 |
20 | ```
21 | 资金费率(Funding Rate)是在加密货币永续合约交易中的一个重要机制:
22 |
23 | 基本概念:
24 |
25 |
26 | 这是永续合约独有的一个结算机制
27 | 定期(通常每8小时)在多空双方之间进行结算
28 | 用来使永续合约价格与现货价格保持接近
29 |
30 |
31 | 工作原理:
32 |
33 |
34 | 如果多数交易者看涨做多,资金费率为正,做多者需要支付资金费给做空者
35 | 如果多数交易者看跌做空,资金费率为负,做空者需要支付资金费给做多者
36 |
37 |
38 | 在你描述的策略中:
39 |
40 |
41 | 你同时持有现货(spot)和合约(futures)
42 | 当价格下跌时,现货亏损而合约盈利
43 | 除了合约本身的盈利外,还可以通过收取资金费率获得额外收益
44 |
45 | 需要提醒的是:
46 |
47 | 资金费率是浮动的,会随市场情绪变化
48 | 高额资金费率通常意味着市场情绪极端
49 | 在使用这类策略时需要考虑交易所手续费、保证金要求等因素
50 | ```
51 |
52 |
53 | https://www.v2ex.com/t/871029
54 |
55 | 混迹币圈多年,相信多数人都是跌跌撞撞走过来的,但是只有极少数人能走向成功,摘取胜利的果实,毕竟市场永远都是二八分化的。20%的人赚取80%的人亏损,这就是现实的残酷。当前整个币圈主要玩法有三类:现货投资者(包括现货基金、理财,挖矿屯币),期货合约投资者和期权投资者。绝大部分是从现货走向期货,但是目前只有少数人从期货走向期权。个人偏好后两类玩法,主要归因于,现货投资周期太长,且资金要求高,属于长期投资者行为。相信不光是我,多数人都不会有那个耐心,都喜欢的是高杠杆玩法,在最短的时间获取最高的回报。所以期货期权玩家占据币圈80%以上。
56 |
57 | 正是这种贪婪的心态,致使多数人纷涌而入衍生品市场。目前全网成交量都在800亿美金左右,对比现货,合约交易额明显占据绝大部分江山。但是风险与收益从来都是相辅相成的,在追求暴富的同时,一念之差可能就是暴负。想当初,我也是一路坎坷中走过来的。初试合约的时候,确实被短期高额收益所迷惑,像100倍杠杆的合约,涨幅1%即可翻倍,一天下来即使两三成仓,多玩几把也能很轻松达到资金翻倍。但是得意便容易忘形,会让人无形中放松中对危险的警惕。在你翻倍后,一次做错亏损50%便会打回原形,所以打江山容易守江山难。而多数人这时候更加不能接受这残酷的事实。从天堂到地狱,便会开始激进,失去理智,想要赚回所失。此时,危险便会悄然而至仍不自知,一时失手爆仓风险随之而来,这可能玩合约多数人的经历,可能会略有差别,但是都殊途同归,最终无可避免的面临爆仓。在征战合约的路上失手,但是期权却迎来我人生中的转折,当时合约实在是亏麻了。偶然下,看到期权的说法,并且被其不爆仓的特性所吸引,初步了解下,期权分两块:传统的欧式期权和美式期权,其中美式期权更适合多数散户操作。因为对比之下,资金门槛低,无需考虑流动性,无需全额交割结算,是一种以小博大的玩法,并且不爆仓。
58 |
59 | 但是个人根据期权的不爆仓特性和有时间周期的缺陷,结合合约的优势进行互补,进行对冲操作,便能够实现稳定的获利,举个例子:比特币现价为10000美金 1、假设你用50美金开100倍杠杆做多2、同时在BitOffer开1张看跌期权对冲(20美金成本)3.一张期权等同于持有一个比特币,期权不爆仓,到期自动结算,且可提前手动平仓。 第一种,当比特币上涨100美金,即涨幅为1% 1、100倍杠杆做多,盈利100%,也就是50美金2、看跌期权损失本金,即20美金3、50-20=30美金(净利润) 第二种,当比特币下跌100美金,即跌幅为1% 1、100倍杠杆做多,合约爆仓,亏损50美金2、看跌期权盈利100美金,期权成本20美金3、100-50-20=30美金(净利润) 如果比特币波动0.5%,涨跌50美金,那么盈亏状况: 第一种情况50-60=-10美金;第二种情况100-50-60=-10美金; 如果比特币波动2%,涨跌200美金,那么盈亏状况: 第一种情况:100-60=40美金;第二种情况:200-50-60=90美金;在上述方案下,只要市场有一定的波动,便能实现稳定获利,风险极其有限。特别是近期BitOffer新推出的DeFi热门币种UNI,一分钟波动都在0.5%以上,1小时波动没低于过2%。用来对冲套利是100%能做到稳赢不赔的。
--------------------------------------------------------------------------------
/docs/article/economy/2024-11-12-币安接口.md:
--------------------------------------------------------------------------------
1 | - 币安接口
2 | - https://developers.binance.com/docs/zh-CN/binance-spot-api-docs/rest-api
--------------------------------------------------------------------------------
/docs/article/economy/2024-11-30-股市.md:
--------------------------------------------------------------------------------
1 | ## 同花顺龙虎榜
2 | - http://data.10jqka.com.cn/market/longhu/
3 |
4 | ## 通达信客户端下载
5 | - https://www.tdx.com.cn/soft.html
6 | - 通达信指标学习 https://www.cnblogs.com/ma-dongdong/p/17323843.html
7 |
8 | ## 央行利率
9 | - http://www.pbc.gov.cn/zhengcehuobisi/125207/125213/125440/index.html
--------------------------------------------------------------------------------
/docs/article/economy/2025-03-10-复盘.md:
--------------------------------------------------------------------------------
1 | ## 4月13日
2 |
3 | - 月线系统显示,全年的理论低点在6月,如果有一根k线的误差,那么,在5、6、7这三个月可能会出现全年的低点。4月这个低点是受利空打下来的,会成为全年的低点吗?也有可能,但大行情不会在这里发动,因为与理论时间差了两个月,历史上没有出现过提前两个月发动行情的情况。
4 | - 周线的定位,要防备有一根k线的误差。当说出日线的定位时,那才是你可以参考的操作依据,因为一根周线的误差,在空间上可能非常大,日线上一根k线的误差,一般就小多了。
5 |
6 | ## 3月15日
7 | 避开前期大幅上涨的AI个股
8 | 目光集中在低位的补涨·
9 | 往往是个股的补涨浪,那些基本面非常不错,底部悄悄放量的个股,尤其要引起注意。
10 | 什么是低位,我给你量化一下,1月14日以来涨幅低于50%的。什么是高位,1月14日以来涨幅大于80%的。
11 | 选股总的原则:避开前期涨幅较大的那些小票。
12 |
13 | ```
14 | A:=MA(C,5)>REF(MA(C,5),1);
15 | XG:COUNT(A,14)>=12 AND C/LLV(L,14)>1.18 AND IF(CODELIKE('8'),0,1) AND IF(CODELIKE('4'),0,1);
16 | ```
17 |
18 | - A:=MA(C,5)>REF(MA(C,5),1):定义变量A,表示5日均线向上,即当前5日均线值大于前一日的5日均线值。
19 | - COUNT(A,14)>=12:统计最近14个交易日中,有12天以上满足条件A(5日均线向上)。
20 | - C/LLV(L,14)>1.18:当前收盘价除以过去14天最低价大于1.18,即股价相对于近期低点已反弹至少18%。
21 | - IF(CODELIKE('8'),0,1):排除代码中含有"8"的股票(通常指港股)。
22 | - IF(CODELIKE('4'),0,1):排除代码中含有"4"的股票(通常指债券或特殊板块)。
23 | - 通达信指标选股,日线,选股后要防止业绩踩雷。
24 | ```
25 |
26 | A:=MA(C,5)>REF(MA(C,5),1);
27 | XG:COUNT(A,14)>=12 AND IF(CODELIKE('8'),0,1) AND IF(CODELIKE('4'),0,1);
28 | ```
29 | ## 3月11日
30 | - 在一个中线上升趋势中,某一天低开在0.7%的下方,意味着市场给了你一根金条,要用你余下的资金买入,在回升到只下跌0.2%的时候,抛出早盘买入的这些股票。
31 | ## 3月9日
32 | - 有色小金属板块3月7日异军突起,下周持续观察。
33 | - 后面的选股,尽可能在发布了年报、预告和快报中挑选,业绩增长、业绩有转好预期
34 | - 避免业绩很差而且股价高高在上的股票。
35 | - 后面的选股,适当的保守仓位继续维持在七成附近。
36 | - 选择机械板块和自动化软件板块,当然了必须与AI相关的补涨品种。
37 | ## 3月7日
38 | 现在是牛市,这是前提。
39 | 手中的股票,强与弱,用什么来评判?boll线。
40 | 指标(主图叠加)是:
41 | ```
42 | BOLL:MA(CLOSE,20);
43 | UB:BOLL+2*STD(CLOSE,20);
44 | LB:BOLL-2*STD(CLOSE,20);
45 | ```
46 | 如果股票当天跌破中轨很远,你可以减掉一半做为保护。
47 | 另一半看第二天的修复情况,如果还是阴线,一般的做法是卖掉。
48 | 如果是阳线,股价往上修复,这一半则可以持有。
49 | 我最喜欢的股票是:股价沿着boll上轨附近慢慢爬升。
50 | 如果离开上轨过远,我也会扔掉一部分,等它回落接回。
51 | ## 2月17日
52 | - 底部放量
53 | - 是经过长时间的下跌,出现一个最低价格后5天之内,都没有再出现新低,并且在这5天内出现了放量(超出5日均量的2倍)的迹象。这种放量如果出现在阳线是最好的。
54 | - 先确定了底部,再放量。
--------------------------------------------------------------------------------
/docs/article/economy/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: home
3 | ---
4 |
7 |
8 |
--------------------------------------------------------------------------------
/docs/article/life/2021-12.md:
--------------------------------------------------------------------------------
1 | ##
--------------------------------------------------------------------------------
/docs/article/life/2022-06.md:
--------------------------------------------------------------------------------
1 | ## 2022年年中总结
2 |
3 | 测试
--------------------------------------------------------------------------------
/docs/article/life/2022-07-01.md:
--------------------------------------------------------------------------------
1 | ### 写博客的初衷
2 |
3 | https://juejin.cn/post/6942492146725290020
4 |
5 | https://juejin.cn/post/7000514687406178312
6 |
7 | https://mp.weixin.qq.com/s/8c5wqua1nV78awIGVFPJ6Q
8 |
9 |
10 | https://juejin.cn/post/7021062842790969381
11 |
--------------------------------------------------------------------------------
/docs/article/life/2022-07.md:
--------------------------------------------------------------------------------
1 | ### 写博客的初衷
2 |
3 | https://juejin.cn/post/6942492146725290020
4 |
5 | https://juejin.cn/post/7000514687406178312
6 |
7 | https://mp.weixin.qq.com/s/8c5wqua1nV78awIGVFPJ6Q
8 |
9 |
10 | https://juejin.cn/post/7021062842790969381
11 |
12 | 十分钟肝了一个博客,并花费一天把过去一年半的记录汇总了过来
13 |
14 | 2020年9月底入行前端,2021年年初的时候就想着,之前三个月遇到的好多问题,或者看过的好多文章都已经连个毛都没有了。遇到相同或者类似的问题又需要进行百度或者google了。其实是一件挺痛苦的事情,浪费了自己的时间,关键是浪费了好多次,得不偿失。
15 |
16 | 于是我就在github上新建了一个仓库,然后开始书写markdown记录笔记了。以前都是在印象笔记里直接富文本了,相对来说md文档见过很多,自己确实也没尝试过。然后从2021年1月1日开始就开始记录每天看到的文章或者遇到的问题了。
17 |
18 |
19 | 其实一直有这个想法,只是一直没有去实践,最近因为那条腿只能呆在家里,所以空闲时间就比较多,这事既然想起来了,就把它肝出来吧。
20 |
21 | 刚开始还有一些犹豫一直想使用vuepress,但是又想尝试新鲜的vitepress,在我正在犹豫的时候我看到一个非常亮眼的优点:可以在md文档里面混合使使vue3的组件。
22 |
--------------------------------------------------------------------------------
/docs/article/life/2023-05-22.md:
--------------------------------------------------------------------------------
1 | 明天是你的四周岁生日,首先,爸爸爱你,祝你生日快乐!这一年,我们的生活经历了很多波折。世界经济发生了巨大的变化,而我们的家庭也受到了影响。这些都是爸爸成长中经历过的事情,但你对这些可能还不太了解。不过没关系,当你长大后,你会理解的。人生就是一场旅行,有时平坦,有时曲折。但是,无论怎样,我们都在一起,共同面对,这就是我们的力量。
2 |
3 | 我们一起度过了全球经济的低谷,一起经历了疫情的困扰,现在,我们正站在疫情告一段落的新的起点上。你可能对这些大的事件并不明了,但这些都是你生活的一部分,你会在这个过程中学到很多。你的成长、你的喜怒哀乐、你的每一次进步,都是我们共同经历困难后最好的回馈。
4 |
5 | 疫情虽然过去了几个月但是经济却没有好转起来,这应该是多数人,甚至绝大多数人没有想到的,有可能下半年经济的好转也不会特别的好吧。所以这个时候只能调整好心态,在这样的时间节点,好好的提升自我,拥抱变化,持续学习,等待时机的到来吧。
6 |
7 | 2022年12月份,正好经历疫情大传播的时间节点,而我和你妈妈也都阳过了,而就在此时,OpenAI这样一家公司发布了ChatGPT这样一个AI产品。其实那时候效果并没有那么好,但是随着时间的推移,尤其是到了今年2023年3月中旬,ChatGPT-4的发布,这个产品的效果已经非常的好了,甚至可以说是非常的惊艳了。这个产品的发布,让我想到了很多,也让我想到了很多的事情,我想把这些事情都记录下来,留给你以后看。怎么留给你呢,就是通过学习然后记录下来,这样你以后就可以看到了。有没有用,或者有一点点用就好了,是吧,汲取一点点的有用信息也是有用的。
8 |
9 | 接下来未来的几年,AI将会如何改变我们,改变我们的工作和生活,尚未可知。现在能做到的便是拥抱AI,通过AI工具来补足自己的不足,提升自己的能力,这样才能在未来的竞争中占据一席之地,至少能有一份工作。其实也不必悲观,我向来是一个乐观派,因为我也在当钱阶段持续不断的学习,无论学习什么都要有一定方向感,然后朝着既定的目标持续的努力,坚持并不一定就会成功,但是你连坚持都做不到,很多事情肯定是达不到自己的目标的。
10 |
11 |
12 | 记得去年你开始上幼儿园的时候,你还是一个小小的、依赖我们的宝宝。而现在,你已经成长为一个独立的小个体,你开始与小伙伴们交流、分享、学习。看到你的进步,爸爸感到无比的自豪和幸福。在接下来的岁月里,你会继续成长,学习更多的东西,体验更多的生活。
13 |
14 | 妈妈也在照顾家庭的生活上付出了巨大的精力和心力,我也看在眼里,而我也由于工作原因,不能很好的照顾你们,这是我一直以来的遗憾,但是我也会尽我最大的努力,让你们过上更好的生活。工作上的宁静,必定是由妈妈为我遮风挡雨了,再次感谢,让我能有更多的时间和精力放在了工作上。希望未来的某天我也能不为工作发愁,有没有工作也无所谓,这样我就可以更多的陪伴你们了,但是当前阶段当前经济形势告诉我,没办法很多事情我还没能力掌控。
15 |
16 | 即使我们在经济上受到了影响,但请记住,我们家的财富不仅仅在于物质上的富裕,更在于我们对彼此的爱,对生活的热爱,对未来的希望。这个世界上,没有什么比亲情更重要,没有什么比健康和幸福更宝贵。所以,无论经济如何,我们都会给你一个充满爱的家,支持你的成长,陪伴你走过每一段旅程。
17 |
18 | 明天,你就四岁了。生日快乐,我的小天使。希望你在新的一岁中,每天都充满快乐,每天都充满好奇,每天都充满成长。你是我们的小太阳,你的笑容就是我们的力量,你的进步就是我们的骄傲。无论你长大到多大,你永远都是我们的宝贝。
19 |
20 | 爱你的爸爸
21 | 2023年5月22日
--------------------------------------------------------------------------------
/docs/article/life/2025-05-15.md:
--------------------------------------------------------------------------------
1 | 时间过的真快,
--------------------------------------------------------------------------------
/docs/article/life/index.md:
--------------------------------------------------------------------------------
1 | ## life
--------------------------------------------------------------------------------
/docs/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | head:
3 | - - meta
4 | - name: baidu-site-verification
5 | content: codeva-Fvp1kD6Rtm
6 | layout: home
7 |
8 | # title: Home
9 |
10 | # hero:
11 | # name: aehyok
12 | # text: 那个曾经的少年回来了
13 | # tagline: Believe in yourself, there's nothing you can't do!
14 | # image:
15 | # src: /home.svg
16 | # alt: logo
17 | # actions:
18 | # - theme: brand
19 | # text: 更多详情
20 | # link: /daily/
21 | # - theme: alt
22 | # text: 访问我的GitHub
23 | # link: https://github.com/aehyok
24 | # - theme: alt
25 | # text: 关于我
26 | # link: /me/
27 | # features:
28 | # - icon: ⚡️
29 | # title: 记录生活,记录学习
30 | # details: 很多时候我们可以停下来,多回头看看,让那些美好的记忆成为永恒,让那些痛苦成为我们的财富
31 | # - icon: 🖖
32 | # title: 浅层的学习靠输入,深层的学习靠输出
33 | # details: 简单的学习可能达到会用的目的就可以了,但想深入便会漏洞百出,让你原型毕露,所以对原理和细节的捕捉要融会贯通,更要进行系统性的学习
34 | # - icon: 🛠️
35 | # title: 读源码和发博客
36 | # details: 读懂别人的代码,就像同他人进行交谈,而博客则更像是会自己学习成果的一种展示,最重要的是取悦自己,而非在意那些
37 | ---
38 |
39 |
42 |
43 |
--------------------------------------------------------------------------------
/docs/me/index.md:
--------------------------------------------------------------------------------
1 | ## about me
2 | - 我的微信号: aehyok
3 |
4 | - 我的公众号:那个曾经的少年回来了
5 |
6 | - 我的个人博客源码:[https://github.com/aehyok/blog](https://github.com/aehyok/blog)
7 |
8 | - 我的掘金首页:[https://juejin.cn/user/2242659452477016](https://juejin.cn/user/2242659452477016)
9 |
10 | - 我的github:[https://github.com/aehyok](https://github.com/aehyok)
11 |
12 | - 我的前端框架源码:
13 |
14 | [pnpm+monorepo+qiankun(微前端)+vite3+vue3+pinia+工程化+组件库](https://github.com/aehyok/vue-qiankun)
15 |
16 |
17 | ## tools
18 | - ip地址和位置查看: https://www.ipaddress.com
19 | - mac下截屏工具:https://getkap.co
20 | - 微前端: 京东 https://micro-zoe.github.io/micro-app/
--------------------------------------------------------------------------------
/docs/public/home.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/docs/public/logo.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/docs/views/game/index.md:
--------------------------------------------------------------------------------
1 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/docs/views/tool/2024-11-11-wsj.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: 如何能免费阅读wsj文章
3 | head:
4 | - - meta
5 | - name: keywords
6 | content: wsj, wsj.com, wsj文章, 阅读wsj文章,免费阅读wsj文章
7 | ---
8 |
9 |
10 | https://github.com/bpc-clone/bypass-paywalls-chrome-clean?tab=readme-ov-file#installation
11 |
--------------------------------------------------------------------------------
/docs/views/tool/base64-image.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
16 |
17 |
--------------------------------------------------------------------------------
/docs/views/tool/index.md:
--------------------------------------------------------------------------------
1 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/app.json:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/appearance.json:
--------------------------------------------------------------------------------
1 | {
2 | "cssTheme": "Minimal",
3 | "theme": "obsidian",
4 | "accentColor": "#13aaa0"
5 | }
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/community-plugins.json:
--------------------------------------------------------------------------------
1 | [
2 | "obsidian-excalidraw-plugin"
3 | ]
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/core-plugins-migration.json:
--------------------------------------------------------------------------------
1 | {
2 | "file-explorer": true,
3 | "global-search": true,
4 | "switcher": true,
5 | "graph": true,
6 | "backlink": true,
7 | "canvas": true,
8 | "outgoing-link": true,
9 | "tag-pane": true,
10 | "properties": false,
11 | "page-preview": true,
12 | "daily-notes": true,
13 | "templates": true,
14 | "note-composer": true,
15 | "command-palette": true,
16 | "slash-command": false,
17 | "editor-status": true,
18 | "bookmarks": true,
19 | "markdown-importer": false,
20 | "zk-prefixer": false,
21 | "random-note": false,
22 | "outline": true,
23 | "word-count": true,
24 | "slides": false,
25 | "audio-recorder": false,
26 | "workspaces": false,
27 | "file-recovery": true,
28 | "publish": false,
29 | "sync": false
30 | }
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/core-plugins.json:
--------------------------------------------------------------------------------
1 | [
2 | "file-explorer",
3 | "global-search",
4 | "switcher",
5 | "graph",
6 | "backlink",
7 | "canvas",
8 | "outgoing-link",
9 | "tag-pane",
10 | "page-preview",
11 | "daily-notes",
12 | "templates",
13 | "note-composer",
14 | "command-palette",
15 | "editor-status",
16 | "bookmarks",
17 | "outline",
18 | "word-count",
19 | "file-recovery"
20 | ]
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/graph.json:
--------------------------------------------------------------------------------
1 | {
2 | "collapse-filter": true,
3 | "search": "",
4 | "showTags": false,
5 | "showAttachments": false,
6 | "hideUnresolved": false,
7 | "showOrphans": true,
8 | "collapse-color-groups": true,
9 | "colorGroups": [],
10 | "collapse-display": true,
11 | "showArrow": false,
12 | "textFadeMultiplier": 0,
13 | "nodeSizeMultiplier": 1,
14 | "lineSizeMultiplier": 1,
15 | "collapse-forces": true,
16 | "centerStrength": 0.518713248970312,
17 | "repelStrength": 10,
18 | "linkStrength": 1,
19 | "linkDistance": 250,
20 | "scale": 1,
21 | "close": true
22 | }
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/plugins/obsidian-excalidraw-plugin/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "id": "obsidian-excalidraw-plugin",
3 | "name": "Excalidraw",
4 | "version": "2.3.0",
5 | "minAppVersion": "1.1.6",
6 | "description": "An Obsidian plugin to edit and view Excalidraw drawings",
7 | "author": "Zsolt Viczian",
8 | "authorUrl": "https://zsolt.blog",
9 | "fundingUrl": "https://ko-fi.com/zsolt",
10 | "helpUrl": "https://github.com/zsviczian/obsidian-excalidraw-plugin#readme",
11 | "isDesktopOnly": false
12 | }
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/themes/Minimal/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Minimal",
3 | "version": "7.7.12",
4 | "minAppVersion": "1.6.1",
5 | "author": "@kepano",
6 | "authorUrl": "https://twitter.com/kepano",
7 | "fundingUrl": "https://www.buymeacoffee.com/kepano"
8 | }
9 |
--------------------------------------------------------------------------------
/excalidraw/aehyok/.obsidian/types.json:
--------------------------------------------------------------------------------
1 | {
2 | "types": {
3 | "aliases": "aliases",
4 | "cssclasses": "multitext",
5 | "tags": "tags",
6 | "excalidraw-plugin": "text",
7 | "excalidraw-export-transparent": "checkbox",
8 | "excalidraw-mask": "checkbox",
9 | "excalidraw-export-dark": "checkbox",
10 | "excalidraw-export-padding": "number",
11 | "excalidraw-export-pngscale": "number",
12 | "excalidraw-export-embed-scene": "checkbox",
13 | "excalidraw-link-prefix": "text",
14 | "excalidraw-url-prefix": "text",
15 | "excalidraw-link-brackets": "checkbox",
16 | "excalidraw-onload-script": "text",
17 | "excalidraw-linkbutton-opacity": "number",
18 | "excalidraw-default-mode": "text",
19 | "excalidraw-font": "text",
20 | "excalidraw-font-color": "text",
21 | "excalidraw-border-color": "text",
22 | "excalidraw-css": "text",
23 | "excalidraw-autoexport": "text",
24 | "excalidraw-embeddable-theme": "text",
25 | "excalidraw-open-md": "checkbox"
26 | }
27 | }
--------------------------------------------------------------------------------
/excalidraw/aehyok/Fonts/字语青梅硬笔.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/excalidraw/aehyok/Fonts/字语青梅硬笔.ttf
--------------------------------------------------------------------------------
/excalidraw/aehyok/欢迎.md:
--------------------------------------------------------------------------------
1 | 这是你的新*仓库*。
2 |
3 | 写点笔记,[[创建链接]],或者试一试[导入器](https://help.obsidian.md/Plugins/Importer)插件!
4 |
5 | 当你准备好了,就将该笔记文件删除,使这个仓库为你所用。
--------------------------------------------------------------------------------
/font/字语青梅硬笔.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/font/字语青梅硬笔.ttf
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "scripts": {
3 | "start": "vitepress dev docs",
4 | "build": "vitepress build docs",
5 | "build-cf": "vitepress build docs --base /",
6 | "docs:preview": "vitepress preview docs",
7 | "javascript": "node createjson.js -c code",
8 | "ai": "node createjson.js -c ai"
9 | },
10 | "devDependencies": {
11 | "vitepress": "^1.3.2"
12 | },
13 | "dependencies": {
14 | "@iframe-resizer/vue": "^5.4.6",
15 | "crypto-js": "^4.2.0"
16 | }
17 | }
--------------------------------------------------------------------------------
/pdf/tech/JavaScript正则表达式迷你书(1.1版).pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/tech/JavaScript正则表达式迷你书(1.1版).pdf
--------------------------------------------------------------------------------
/pdf/《命悬一线,我不放手:ICU生死录》薄世宁.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/《命悬一线,我不放手:ICU生死录》薄世宁.pdf
--------------------------------------------------------------------------------
/pdf/《美国商业400年.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/《美国商业400年.pdf
--------------------------------------------------------------------------------
/pdf/乡下人的悲歌.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/乡下人的悲歌.pdf
--------------------------------------------------------------------------------
/pdf/制造贫困:一个美国问题.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/制造贫困:一个美国问题.pdf
--------------------------------------------------------------------------------
/pdf/拿破仑传.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/拿破仑传.pdf
--------------------------------------------------------------------------------
/pdf/独立战争与世界重启:一部新的十八世纪晚期全球史.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/独立战争与世界重启:一部新的十八世纪晚期全球史.pdf
--------------------------------------------------------------------------------
/pdf/病毒下层社会:疾病与不平等在美国的碰撞.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aehyok/blog/d99728cc064c876cc834283c7d4444b99088cc76/pdf/病毒下层社会:疾病与不平等在美国的碰撞.pdf
--------------------------------------------------------------------------------