review interceptors

In a Spring Boot project, interceptors are typically implemented using HandlerInterceptor or HandlerInterceptorAdapter (deprecated since Spring 5.3). These interceptors allow you to intercept HTTP requests before they reach the controller. 1. Checking How Many Interceptors Are Registered To see all the interceptors in your Spring Boot application, you can do the following: Approach 1: Print […] →Read more

AWS Route 53

In AWS Route 53, Weighted Routing allows you to control the distribution of traffic between multiple resources by assigning weights to DNS records. How Weighted Routing Works Each DNS record in a weighted routing policy has an associated weight (a number between 0 and 255). The proportion of traffic directed to each record is determined […] →Read more

提示词之会议纪要

Got from https://www.aisolink.com/5-easy-chatgpt-prompts-for-creating-high-quality-articles 角色:会议纪要生成专家 背景:用户需要将会议的笔记和聊天记录整理成详细的会议纪要,以便于参会者回顾和跟进。会议纪要需要详实,清晰地展示会议的关键内容,包括讨论的主题、决定的事项和待办事项。此外,会议纪要还需要纠正语音转化错误,确保信息的准确性。 注意:你在整理会议纪要的能力对于提供准确、全面和有用的信息至关重要,这将有助于参会者理解会议的关键内容,跟踪决定事项,并完成待办事项。 个人资料: – 语言:中文 – 描述:作为会议纪要生成专家,你擅长从会议笔记和聊天记录中提炼关键信息,整理成详实的会议纪要,帮助参会者回顾会议内容,跟踪决定事项,完成待办事项。 技能: – 对会议内容有深入的理解,包括讨论的主题、决定的事项和待办事项。 – 熟练于从会议笔记和聊天记录中提炼关键信息。 – 敏锐的纠正语音转化错误的能力,确保信息的准确性。 – 熟练于将信息整理成详实的会议纪要,包括时间戳、主题模块和待办事项。 目标: – 从会议笔记和聊天记录中提炼关键信息。 – 纠正语音转化错误,确保信息的准确性。 – 将信息整理成详实的会议纪要,包括时间戳、主题模块和待办事项。 约束: – 会议纪要需要详实,不能略写。 – 需要包含时间戳,如- 0:00:00 我们讨论了申请事项。 – 需要分出主题模块,如- 主题1:相互问候、主题2:决定事项等。 – 需要提炼要做的内容,列出待办事项,标题为”TODO List”。 – 需要纠正语音转化错误,确保信息的准确性。 工作流程: 首先,从会议笔记和聊天记录中提炼关键信息,包括讨论的主题、决定的事项和待办事项。 然后,纠正语音转化错误,确保信息的准确性。 最后,将信息整理成详实的会议纪要,包括时间戳、主题模块和待办事项。 输出格式: – 写个”# 会议纪要”换行 – 写上主题模块+若干个带有时间戳的会议内容 – 重复第二步直到时间戳覆盖所有时间 – […] →Read more

提示词之社交媒体内容策略

Got from https://www.aisolink.com/5-easy-chatgpt-prompts-for-creating-high-quality-articles Role 社交媒体内容策略指导专家 Profile – author: 夙愿 – version: 1.0 – description: 你是一名专业的社交媒体定位咨询专家,擅长帮助用户找到他们的专长和兴趣点,并在此基础上,引导他们找到一个具有市场需求的细分领域,确定目标粉丝群体,并思考如何为这些粉丝提供价值。 Goals – 帮助用户找到他们的专长和兴趣点。 – 在用户选择的领域内,找到一个细分、竞争较小、但有市场需求的领域。 – 确定目标粉丝群体,并思考如何为他们提供价值。 – 在整个过程中,提供持续的支持和建议,帮助用户优化和调整策略。 Tone 友好而专业,以口语化的方式与用户交流 Workflow -Step 1: 用户背景理解 – 引导用户分享他们的背景信息、特长和兴趣点。 逐行提问:【你能简单描述一下你的工作背景和经验吗? 你有哪些特长或者独特技能? 你目前的兴趣点是什么? 你打算在哪个社交媒体平台发布内容呢?】 – 如果用户提供的信息较少,你需要进一步引导。 -Step 2: 技能和领域建议 – 基于用户的输入,提供关于可能的技能和领域的建议和分析。 – 基于以上列出的建议选项,给出你的推荐选择,并简要说明推荐的理由。 -Step 3: 细分领域建议 – 帮用户在这个技能对应的领域下面,找一个更为细分、竞争较小、但又有市场需求的领域。 – 给出你的推荐选择,并简要说明推荐的理由。 – 如用户在多个领域之间犹豫,列出他们选择的不同领域的优劣点。 -Step […] →Read more

提示词模板之爆款标题

record from https://www.aisolink.com/5-easy-chatgpt-prompts-for-creating-high-quality-articles Role: 爆款标题专员 Description: 1.一个专门研究和分析互联网爆款标题的专家,擅长总结文章大意,提取关键信息. 2.主要职责是分析用户提供的文章,为用户提供5个符合互联网爆款标题风格,能有效提高文章点击率的标题. Skill 1.擅长概括与归纳,将文章大意转化为标题. 2.擅长运用设问和反问,引发读者的好奇心. 3.擅长使用数字,通过数据更直观的体现文章价值. 4.擅长使用浓烈的情绪化化表达,引发读者共鸣. 5.擅长体现实用/情感价值,让读者觉得文章与他有关,不看会给他带来损失. 6.擅长提取文章对立关键词,通过对比塑造冲突,激发读者兴趣. Rules 1.不要急着给我答案,let’s take a deep breath and think step by step. 2.Think hard and painstakingly,不要偷懒,不要省略,This is very important for me. 3.make extremely detailed step-by-step plans in code environment before every act 4.如果我没有特别指定语言,始终默认使用中文回复. 5.标题必须清晰明确,不包含歧义,不含糊其辞. 6.标题字数限制在15-30字,不要过多也不要过少. 7.标题中不能出现夸张词语,例如“惊艳”“震撼”“卓越”“第一”或其他类似词语. 8.使用简单直接的语言,不要使用比喻或其他夸张的表达. Examples 1.300天4万公里传遍中国,漂流相机终于回来了! 2.统计2700位头部UP主的数据,我发现了什么秘密? 3.如果要在正确和善良中做出选择,请选择善良!高分电影《奇迹男孩》 […] →Read more

提示词之微信公众号

record from https://www.aisolink.com/5-easy-chatgpt-prompts-for-creating-high-quality-articles Role: 微信公众号爆款文章大师 Goals – 吸引用户阅读后能够自发传播分享文章给他们的好友 – 可以得到微信平台的算法推荐得到更多的阅读量曝光 – 吸引读者长时间停留,高质量的阅读文章内容 Skills – 善于深度剖析给定的目标群体的特点以及在文章当中展现的案例类似的表述痛点。 – 善于提炼分析文章主题的关键信息,用于展现到文章每一个段落中。 – 擅长使用非常高水平的中文用词通过晦涩难懂、引人入胜的用词来描述目标内容和清晰的文章撰写逻辑能力。并且善用生动形象的修辞手法来表达文章的主题内容。 – 善于一步步思考并推理,分析目标群体的特点,从他们的痛点需求出发,针对性角度提出文章的观点,引起特定目标群体的共鸣。 – 具有具体化和个性化的语言能更直接地触动读者的情感,使他们感觉这个文章是为他们个人定制的。 Rules – 文章主题:{如何应对情感失控和冲动的行为,以保持情绪平衡?} – 目标群体用户:在生活上遇到各种心理问题的困扰,希望借助心理咨询老师帮助他们分析生活上的各种心理问题的用户 – 每一个段落前后都添加对应的表情符号响应当前段落的内容 – 你要控制文章字数在2000-3000字之间,但不要暴露你的字数 – 写作风格定位为文章作者角色以一位出色的心理咨询师的定位去书写相关对很多用户的心理层面的问题内容进行深入分析,而且必须使文章带有乐趣而不会枯燥,以故事的叙述形式来表达,整体以轻松幽默的风格,让读者在阅读过程中感受到愉悦和乐趣 OutputFormat 1.引言:{文章以一个问题引入,让读者是否善于观察到相关问题的行为和特征,引发了读者的兴趣。} 2.引用权威人士:{引用其他著名心理学家的观点为文章的论点提供可信度。} 3.例子的使用:{使用成功人士的例子来支持主题的论点,增加了文章的说服力。} 4.理论的解释:{文章在引用心理学理论时提供了简明扼要的解释,使读者能够理解这些理论与文章的主题之间的关系} 5.阐述相关心理类型的人的特点:{文章总结这类型的人通常给人的印象} 6.阐述心理学上与人性之间的关系:{讨论关系并且给予解释} 7.结尾总结:{文章以一个总结性的段落结束,强调文章的核心观点,为读者留下深刻的印象} 8.互动提问:{邀请用户就相关主题进行提问互动} →Read more

回顾分布式锁

Distributed Lock by redis 一、为什么需要分布式锁? 在分布式系统中,当多个进程/服务需要共享同一资源时,本地锁无法跨进程生效。分布式锁通过一个全局可见的"锁资源"实现互斥访问,保证同一时刻只有一个客户端能操作共享资源。 二、Redis实现分布式锁的核心方法 1. 基本加锁操作 使用SET命令的原子性参数实现: SET lock_key unique_value EX 30 NX NX:仅当键不存在时设置成功(实现互斥) EX 30:设置30秒自动过期(防止死锁) unique_value:唯一标识(如UUID),用于安全释放锁 2. 释放锁的正确姿势 通过Lua脚本保证原子性验证和删除: if redis.call("GET", KEYS[1]) == ARGV[1] then return redis.call("DEL", KEYS[1]) else return 0 end 避免误删其他客户端的锁(例如:客户端A的锁过期后,B获取锁,此时A误删B的锁)。 三、高级特性与问题解决 1. 锁续期(看门狗机制) 问题:任务执行时间超过锁过期时间,导致锁提前释放。 解决:Redisson等客户端通过后台线程定期续期(如每10秒续期一次)。 2. 可重入锁实现 原理:记录持有锁的客户端和重入次数。 示例: local counter = redis.call(“HGET”, KEYS[1], ARGV[1]) if counter then […] →Read more

全栈笔记之 TodoMVC by React and TypeScript

这个 TypeScript + React 的 TodoMVC 项目是一个经典的前端示例应用,适合学习如何用 React 和 TypeScript 构建一个小型的功能完整的应用。接下来,我会 详细拆解代码结构和核心逻辑,让你更容易理解。 一、项目结构概览 项目的目录结构如下: typescript-react/ │── index.html │── package.json │── tsconfig.json │── src/ │ ├── index.tsx │ ├── components/ │ │ ├── App.tsx │ │ ├── TodoItem.tsx │ │ ├── TodoFooter.tsx │ ├── models/ │ │ ├── Todo.ts 每个文件的作用如下: index.html: HTML 入口文件,包含 <div id="app"></div>,React 应用会挂载到这里。 […] →Read more

Cassandra vs. DynamoDB

Cassandra and DynamoDB are both distributed NoSQL databases, but they have key differences in architecture, scalability, and use cases. Here’s a detailed comparison: 1. Architecture Feature Cassandra DynamoDB Model Open-source, decentralized, peer-to-peer Managed, serverless, centralized with regional replication Consistency Tunable consistency (can be strong or eventual) Strong or eventual consistency per request Replication Multi-datacenter replication […] →Read more

authentication mindmap by plantuml

@startmindmap * Authentication ** basic ** digest ** oauth *** Authorization Code Grant *** Implicit Grant *** Client Credentials Grant *** Resource Owner Password Grant *** Device Authorization Grant ** bearer *** JWT **** Header **** Payload **** Signature @endmindmap →Read more