本教程将从零开始部署一个前后端分离的开源项目,利用docker虚拟机的容器技术,采用分布式集群部署,将项目转换成为高性能.高负载.高可用的部署方案.包括了MySQL集群.Redis集群.负载均衡.双机热备等等. 部署图 所用到的主流技术 Docker容器.前后端集群.MySQL集群.Redis集群.Haproxy负载均衡.Nginx负载均衡.Keepalived实现双机热备 前后端分离项目部署图 前后端分离项目开源框架介绍 本次教程所采用的前后端分离的项目开源框架是人人网的renren-fast…
数据库准备 建立数据库 renren_fast ,然后运行renrenfast项目中的db文件夹内的脚本 -- 菜单 CREATE TABLE `sys_menu` ( `menu_id` bigint NOT NULL AUTO_INCREMENT, `parent_id` bigint COMMENT '父菜单ID,一级菜单为0', `name` varchar() COMMENT '菜单名称', `url` varchar() COMMENT '菜单URL', `perms` varcha…
Redis高速缓存 利用内存保存数据,读写速度远超硬盘:可以减少I/O操作,降低I/O压力. 发红包.抢红包的数据可以存在高速缓存中,加快处理速度,不需要经过数据库 淘宝首页一些优惠活动商品等热数据可以存在高速缓存中,而基于大数据的推荐产品从数据库中读取 Redis介绍 Redis是Wmware开发的开源免费的KV型NoSQL缓存产品 Redis具有很好的性能,最多可以提供10万次每秒的读写 目前新浪微博团队组建了世界上最大规模的Redis集群 Redis目前的集群方案分为以下几种: Redis…
单节点数据库的弊病 大型互联网程序用户群体庞大,所以架构必须要特殊设计 单节点的数据库无法满足性能上的要求 单节点的数据库没有冗余设计,无法满足高可用 单节点MySQL的性能瓶领颈 2016年春节微信红包巨大业务量,数据库承受巨大负载 常见MySQL集群方案 mysql 集群方案介绍,建议使用pxc,因为弱一致性会有问题,比如说a节点数据库显示我购买成功,b 节点数据库显示没有成功,这就麻烦了,pxc 方案是在全部节点都写入成功之后才会告诉你成功,是可读可写双向同步的,但是replication…
Docker Swarm技术 docker swarm技术(之前的docker集群都是在 一个虚拟主机上的,但是如果这个主机挂掉了over了,docker技术就是多个虚拟主机形成一个集群) Swarm是Docker的一个编排工具,参考官网:https://docs.docker.com/engine/swarm/ 与docker集成的集群管理工具 去中心化设计,只使用docker引擎即可创建各类节点 声明式服务模型.可以声明的方式来定义应用. 动态伸缩.管理节点自动调整服务数量. 高可用,对于服…
安装 docker hub地址:https://hub.docker.com/r/portainer/portainer/ # 每台服务器都要安装 docker pull portainer/portainer 开放Docker网络管理端口 修改 docker.service  修改 [Service]的ExecStart,ExecStart= 一定要加 cp /usr/lib/systemd/system/docker.service /usr/lib/systemd/system/docke…
下载RabbitMQ镜像 镜像地址RabbitMQ Docker官方认证镜像地址:https://hub.docker.com/_/rabbitmq 安装命令安装之前,切记把Docker Hub设置为阿里云的加速,方便安装. docker pull rabbitmq:-management 注意使用后缀为"-management"的镜像版本,是包含网页控制台的. 查看安装 使用命令:docker images查看下载的镜像,如下图所示: 启动RabbitMQ docker run -d…
前言:两个月前的16年11月份完成的配置,使用的solr6.1和zookeeper3.4,刚刚写成blog,目前版本可能有小版本的变化. 本例完成结果为:在docker环境下部署solrcloud集群,同时使用zookeeper集群做配置管理. 一.部署zookeeper集群 1.加载images,(两种方式:A下载offical版本zookeeper,B加载导出的tar包.A方式为新部署的情况,B方式为从测试环境部署到正式环境的情况) A下载 #下载 docker pull zookeeper…
由于容器化的需要,前几天我本地也换成了docker环境.就研究了一下docker环境下phpstorm和xdebug的配置. http://www.mmfei.com/?p=453 这个博客给出了一个常规的解决思路.这里需要注意的是,在docker环境下phpstorm的CLI Interpreter需要配置容器镜像和目录映射. mac环境下docker中的Xdebug不能使用127.0.0.1左右remote_host.而是要使用docker的宿主IP. 由于办公环境的复杂,导致我得本机IP,…
本文记录下通过MySQL Replication在Docker环境下,通过多个容器 实现数据库主从配置. MySQL Replication就不多解释了,简单说就是MySQL非常出色的一个功能,该功能将一个MySQL实例中的数据复制到另一个MySQL实例中.整个过程是异步进行的,但由于其高效的性能设计,复制的延时非常小.MySQL复制功能在实际的应用场景中被广泛的应用于保证数据系统数据的安全性和可扩展设计中.想了解更多可从网上找更多的资料. 首先当然是准备好一台安装好docker的linux环境…