技术栈:DDD领域驱动设计、SpringBoot、MyBatis、Redis、OKHttp3、OpenAI、Hystrix、Docker、Nginx
项目描述:此项目是我大学期间真实上线的对接多种大模型提供生成式服务的商业网站,从域名备案、业务开发到运维上线都积累了丰富经验。代码结构以领域驱动分为鉴权登录、OpenAI、订单、微信4个场景,便于维护扩展。
项目亮点:
1.采用DDD架构,一个领域就是一个功能域。提供模型、仓储、事件、服务,更好扩展。
2.对接支付,完成从商品库、下单支付、异步发货、超时关单、掉单补偿、发货补偿等流程。
3.设计ChatGPT/ChatGLM-SDK,允许用户选择模型。采用了Session会话模型和工厂处理服务。采用OKHttp3通信,并使用SSE与OpenAI异步通信。
4.实施敏感词过滤、请求频率、次数限制和JWT认证机制,这些安全措施通过规则工厂整合。
5.基于JWT的Token鉴权,整合公众号验证码登录,Redis存储验证码,确保了分布式部署的可访问性。
6.集成Actuator埋点和Prometheusl、Grafana监控。使用ApiPost对接口压测,验证了在50~80TPS的高负载下,添加Hystrix超时6秒熔断的必要性。
点击空白处退出提示
评论