天虹商城(2017/11-- 2018/5)
技术架构:jQuery UI+Spring+SpringMVC+Mybatis+MySql+Redis+solr+RabbitMQ
硬件环境:Del服务器
开发工具:eclipse+maven+svn
项目职责:
使用JQueryUI独立完成商品管理模块的页面开发与服务器端开发
门户系统,主要是面向用户访问,使用Httpclient和服务层接口交互
使用Solr实现站内搜索技术,搭建solr服务器、编写solr服务接口
Redis缓存,搭建redis服务器、编写redis单机版和集群版Java接口,开发中实现单机版与集群版的无缝切换
商品展示部分,商品基本信息正常加载,商品描述采用延迟加载,规格参数采用多tabs页按需加载
使用freemaker页面静态化技术,每个商品在后台新增编辑时要对应生成一个html文件,保存到磁盘用nginx访问
采用单点登录实现分布式环境下session共享,redis模拟session,使用UUID生成token作为user的key保存到redis,并将token写入cookie
RabbitMQ的路由模式实现搜索系统中索引数据和后台系统的数据同步,降低系统耦合度。后台系统将消息发送到交换机中,前台系统和搜索系统都创建自己的队列,然后将队列绑定到交换机从而实现数据同步
为了提高系统高可用,入口采用两台nginx,并使用keepalived+nginx实现双主热备
使用Mycat实现mysql数据库数据分片,分表分库
Spring schedule实现定时关单任务,Spring Schedule+Redisson构建分布式锁实现分布式集群环境下任务调度
项目描述:
整个系统采用分布式系统架构,系统内部接口调用采用Httpclient,使用http协议传递json数据方式实现。接口提供端采用RESTful方式发布接口;系统之间的通知机制采用MQ的方式,使用RabbitMQ的实现,采用消息订阅模式降低系统之间的耦合度,提高了系统的扩展性。为了提高系统的性能使用redis做系统缓存,并使用redis实现session共享。为了保证redis的性能使用redis的集群。搜索功能使用solrCloud做搜索引擎。部署方面,采用了keepalived+Nginx+Tomcat的双机热备模式,其中nginx的作用一方面是做反向代理、负载均衡、另一方面是做图片等静态资源的服务器。