Skip to main content

浅谈分布式锁

随着架构系统的演进,由纯真的单机架构到容器化编排的分布式架构,可以说是一个大型互联网企业发展的必然走向。在网站初创时,应用数量和用户较少,可以把Tomcat和Mysql部署在同一台机器上。随着用户数量增多,访问量增大,并发升高,Tomcat和MySQL竞争资源,此时,单机已经扛不住了,需要把Tomcat和MySQL分离在不同的机器上,用于提升单台机器的处理能力。业务从来没有减少,产品越做越大。应用也越来越复杂,原来的大应用,拆分成多个小应用,加入各级缓存,做了反向代理负责均衡,最后坠入分库分表的深渊。

继续阅读

Mac 下 Nginx、PHP、MySQL 和 PHP-fpm 的安装和配置

手动搭建nginx+php+mysql是phper的一件必备的技能,PHP界众所周知LAMP或者LNMP是Linux+Apache(Nginx)+Mysql+PHP的一套运行环境,而Linux和Mac有相似之处,其核心来源于Unix,所以Linux中的大部分命令在Mac中也是完美支持的,本文就MNMP环境的搭建做一个经验总结。

我们知道nodes与npm,java与maven(或者gradle),php与composer,Ubutun与apt-get,Centos与yum等等,均属于开发语言或操作系统与库或者安装包的依赖管理,而Mac上则常用的包管理器是homebrew。

继续阅读

[转]怎么回答面试官:你对Spring的理解?

Java面试中不可避免的都会问到Spring相关的问题,经常会遇到的就是IOC、AOP、Bean的实例化等,虽然有时候我们能回答上这些问题,但是如果没有从源码中领悟Spring的架构原理,也就不知道spring背后做了哪些事,我们项目中会遇到哪些问题。本文作者bravo1988从BeanDefinition和BeanPostProcessor层面阐述了spring中的设计思想以及spring核心原理。

继续阅读