背景 达达后台系统目前每天都要支撑数十亿的访问量,这对于服务系统整体架构是个严峻的考验。考虑到越来越复杂的业务以及不断增加的访问压力,我们对数据层进行了一系列的改造(参见达达-高性能服务端优化之路),也对业务层进行了服务化(参见基于Zookeeper的服务注册与发现)。同时,参照DDD设计 ...
二 springmvc的工作机制 在容器初始化时会建立所有url和controller的对应关系,保存到Map lt url,controller gt 中.tomcat启动时会通知spring初始化容器 加载bean的定义信息和初始化所有单例bean ,然后springmvc会遍历容器中的bean,获取每一个controller中的所有方法访问的url,然后将url和controller保存到一 ...
2018-01-03 15:41 0 2563 推荐指数:
背景 达达后台系统目前每天都要支撑数十亿的访问量,这对于服务系统整体架构是个严峻的考验。考虑到越来越复杂的业务以及不断增加的访问压力,我们对数据层进行了一系列的改造(参见达达-高性能服务端优化之路),也对业务层进行了服务化(参见基于Zookeeper的服务注册与发现)。同时,参照DDD设计 ...
前言 上一篇在springboot中基于自动配置集成了rabbitmq。那么回到最初的话题中就是想在秒杀下单环节增加排队机制,从而达到限流的目的。 优化秒杀下单流程 之前是在控制器里拿到客户端请求后直接入库、减库存。如果碰到羊毛党其实这套机制是不行的。并发量 ...
本文提要 最近写的几篇文章都是关于数据层优化方面的,这几天也在想还有哪些地方可以优化改进,结合日志和项目代码发现,关于数据层的优化,还是有几个方面可以继续修改的,代码方面,整合了druid数据源也开启了sql监控等,修改和规范了变量的命名方式,建表时的命名方式也做了修改,不过做的这些还不够,优化 ...
前言 看到标题你可能会问为什么这一篇会谈到代码测试,不是说代码优化么?前两篇主要是讲了程序的输出及Log4j的使用,Log能够帮助我们进行bug的定位,优化开发流程,而代码测试有什么用呢?其实测试是为了验证自己所编写的代码,及时排除错误,减少bug,所以我认为,减少错误也是优化的一个方案体现 ...
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。 学习课程的地址:https://www.imooc.com/learn/632 老师 ...
druid介绍 这是druid对自己的介绍: Druid是阿里开源的一个数据库连接池技术,号称自己是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3 ...
阶段总结 又到了优化篇的收尾阶段了,这其实是一篇阶段总结性的文章,今天是4月29号,距离第一次发布博客已经两个月零5天,这两个多月的时间,完成了第一个项目ssm-demo的更新,过程中也写了33篇博客来对项目进行讲解和分析,更多的应该是自己的心得体会,把一些想表达的东西写在博客中展现 ...
前言 这两天也一直在纠结这一篇文章该写什么东西,前面临时加的两篇文章就有些打乱了整体节奏,这一篇又想去写一下代码层面优化的事情,可是也不太能抓住重要的点,不太确定从何入手,因为这件事情牵涉了太多技术问题,存在于项目的方方面面,如果想要透彻的去讲这件事,我也知道是不可能的,纠结了两天,这篇文章就着 ...