尚上优选-核心技术案例

全文检索

从海量数据中搜索用户给定的文字信息。

分布式微服务框架

把一个完整的大型项目安装业务模块或服务功能,独立拆分且能互相访问。现已是大中型互联网系统的标准化解决方案。

异步消息队列

主要解决高并发场景发送信息。

分布式事务

基本数据利用MQ保证最终一致性,出现问题来使用补偿机制解决;

分布式锁

商品详情使用分布式锁+缓存Cache-Aside模式,保证高效的查询以及缓存一致性,防止缓存击穿等问题。使用lua脚本进行锁延期、自旋检测等。

线程池&线程隔离

微服务管理自己的线程池,实现动态扩容、自动伸缩、线程隔离、以及快速降级,提升服务器性能,缓解系统的并发压力。

尚上优选-关键技术

SpringBoot:简化新Spring应用的初始搭建以及开发过程 SpringCloud:基于Spring Boot实现的云原生应用开发工具,SpringCloud使用的技术:(Spring Cloud Gateway、Spring Cloud Alibaba Nacos、Spring Cloud Alibaba Sentinel、Spring Cloud Alibaba Seata、Spring Cloud Task和Spring Cloud Feign等) SkyWalking:分布式追踪系统 MyBatis-Plus:持久层框架 Redis:内存缓存 Redisson:基于redis的Java驻内存数据网格 RabbitMQ:消息中间件 ElasticSearch +Kibana: 全文检索服务器 +可视化数据监控 ThreadPoolExecutor:线程池来实现异步操作,提供效率 XXL-JOB:分布式任务调度 MinIO:分布式文件存储 微信支付 Knife4j:Api接口文档工具 Nginx:负载均衡 Lombok Mysql:关系型数据库 MongoDB:面向文档的NoSQL数据库 Vue.js:web 界面的渐进式框架 Node.js: JavaScript 运行环境 Axios:Axios 是一个基于 promise 的 HTTP 库 NPM:包管理器 Babel:转码器 Webpack:打包工具 Docker:容器技术 Git:代码管理工具 DockerFile:管理Docker镜像命令文本 Jenkins:持续集成工具

尚上优选-应用领域

  • ElasticSearch应用在京东、百度的搜索功能。
  • RabbitMQ 应用于大型分布式系统中的消息传递。
  • Spring cloud 应用于微服务领域。
  • Minio普遍应用于大规模文件存储场景,是一款开源轻量级分布式文件系统。
  • Nginx新浪、百度、腾讯等多家互联网公司使用,用于反向代理和负载均衡,锤子手机发布会的门票就是捐给了其下的子项目OpenResty。
  • Redisson分布式项目解决分布式锁,分布式集合的必备框架,现今的所有分布式项目几乎都用到
  • Docker分布式项目都使用虚拟化技术部署,以方便应用隔离以及集群化;
  • Jenkins+Github现在公司的统一持续集成解决方案,通过代码提交到github,使用jenkins进行自动化部署到docker容器,实现持续部署。

尚上优选-项目展示