摘要:
前言 距离上次被DDOS攻击已经有10天左右的时间,距离上上次已经记不起具体那一天了,每一次都这么不了了只。然而近期一次相对持久的攻击,我觉得有必要静下心来,分享一下被黑的那段经历。 在叙述经历之前,先简单的介绍一下服务器配置情况: ECS 1核2G内存1MB带宽,Linux系统 RDS 2核240 阅读全文
摘要:
前言 俗话说的好,冰冻三尺非一日之寒,滴水穿石非一日之功,罗马也不是一天就建成的。两周前秒杀案例初步成型,分享到了中国最大的同性交友网站 码云。同时也收到了不少小伙伴的建议和投诉。我从不认为分布式、集群、秒杀这些就应该是大厂的专利,在互联网的今天无论什么时候都要时刻武装自己,只有这样,也许你的春天就 阅读全文
摘要:
前言 随着互联网的发展,无论是web服务还是移动APP越来越多的都集成了第三方支付(支付宝、微信、银联)。通常作为服务提供方,支付成功以后都会有一个后端回调URL来通知是否调用者是否支付成功,这个URL必须是公网环境,并且可以被访问到。然而在实际开发测试环境中,我们一般都是在内网开发,所以说对于支付 阅读全文
摘要:
前言 在单体架构的秒杀活动中,为了减轻DB层的压力,这里我们采用了Lock锁来实现秒杀用户排队抢购。然而很不幸的是尽管使用了锁,但是测试过程中仍然会超卖,执行了N多次发现依然有问题。输出一下代码吧,可能大家看的比较真切: 代码写在service层,bean默认是单例的,也就是说lock肯定是一个对象 阅读全文
摘要:
前言 秒杀架构持续优化中,基于自身认知不足之处在所难免,也请大家指正,共同进步。文章标题来自码友的建议,希望可以把阻塞队列ArrayBlockingQueue这个队列替换成Disruptor,由于之前曾接触过这个东西,听说很不错,正好借此机会整合进来。 简介 LMAX Disruptor是一个高性能 阅读全文
摘要:
前言 从0到1构建分布式秒杀系统案例的代码已经全部上传至码云,文章也被分发到各个平台。其中也收到了不少小伙伴喜欢和反馈,有网友如是说: 说实话,能用上的不多,中小企业都不可能用到,大型企业也不是一个人就能搞起的,大部分人一辈子都用不上,等有这个需要再搞吧。 我的观点是赞同但不支持,基本上任何事物都是 阅读全文
摘要:
前言 最近,被推送了不少秒杀架构的文章,忙里偷闲自己也总结了一下互联网平台秒杀架构设计,当然也借鉴了不少同学的思路。俗话说,脱离案例讲架构都是耍流氓,最终使用SpringBoot模拟实现了部分秒杀场景,同时跟大家分享交流一下。 秒杀场景 秒杀场景无非就是多个用户在同时抢购一件或者多件商品,专用词汇 阅读全文
摘要:
前言 前几篇文章着重介绍了后端服务数据库和多线程并行处理优化,并示例了改造前后的伪代码逻辑。当然了,优化是无止境的,前人栽树后人乘凉。作为我们开发者来说,既然站在了巨人的肩膀上,就要写出更加优化的程序。 "SpringBoot开发案例之JdbcTemplate批量操作" "SpringBoot开发案 阅读全文
摘要:
前言 很多初学者,甚至是工作1 3年的小伙伴们都可能弄不明白?servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全? 在谈这个话题之前,我们先了解一下Java中相关的变量类型以及内存模型JMM。 变量类型 类变量:独立于方法之外的变量,用 sta 阅读全文
摘要:
基于spring boot 2.x + quartz 的CRUD任务管理系统,适用于中小项目。 基于spring boot +quartz 的CRUD任务管理系统: https://gitee.com/52itstyle/spring boot quartz 开发环境 JDK1.8、Maven、Ec 阅读全文