补充: 实际项目中的主键不能用自增id,我们可以用snowflake算法。 参考:http://mp.weixin.qq.com/s/bIkdcYo32yTEOGn0t8ABeg 核心代码: Read More
编程要有一个习惯:做参数校验 所谓的分布式session:就是用redis统一管理session。 我们这里的思路是:把token写入cookie中,客户端在随后的访问中携带cookie,服务端就能根据cookie中携带的token去redis中查找到user信息。 这里要注意:session的有效 Read More
由于秒杀的并发量太大,所以仅仅使用缓存是不够的,还需要用到RabbitMQ。 这里推荐一款用于分库分表的中间件:mycat 解决超卖的问题(看第五章节): 秒杀接口优化: 实操: 然后把下载好的文件上传到服务器上: 验证一下: OK,到这一步,erlang安装好了。 启动rabbitMQ: 关闭: Read More
页面静态化(注意和页面缓存的区别):直接把html缓存到用户的浏览器上,动态数据通过接口从服务器获取。 所谓的页面静态化或者说前后端分离,就是html+ajax。 Read More
页面缓存(如果redis缓存里有就直接返回,如果没有的话就进行手动渲染,同时放入redis缓存): 注意一点,页面缓存一般有效期都不长,以防止更新不及时。 对象缓存(注意,更新数据库以后一定要记住更新缓存或者删除缓存): 注意,一个service引用别人的时候一定要引用别人的service,因为有可 Read More
然后修改下入口: 这样程序既可以以war也可以以jar的形式run。 右键项目properties,找到项目位置,然后: 然后放到tomcat的webapps的目录下: 然后启动tomcat:startup.bat Read More
然后依次测试如下命令: 上面第三个命令写错了,要改为: Read More
JMeter在windows下图形界面的使用: 下载: 解压后: 双击打开: 压测不带参数的接口: 然后保存,查看结果: 然后更改线程数多测试几次。 下面我们边用测试边看服务器的负载情况: 这里说个小技巧,怎样使登录服务器的时候直接显示这个画面呢? 明白了吧?直接复制到该文件下即可。 言归正传,执行 Read More
补充: 用户登录: http协议是在网络上是明文传输,如果数据包被截取到了,那么别人就会得到明文密码。 第一次MD5是防止用户的明文密码在网络上传输 第二次MD5是防止数据库泄露以后密码被反查出 GlobalException: GlobalExceptionHandler: 然后service层需 Read More