温馨提示:请不要盲目的进行横向扩展,优先考虑对单台服务器的性能优化,只有单台服务器的性能达到最优化之后,集群才会被最大的发挥作用。

一、架构图

服务器准备:3台,ubuntu16.04系统
master:192.168.1.190 nginx反向代理服务器
node1:192.168.1.191 golang服务器
node2:192.168.1.192 golang服务器
node3:192.168.1.193 golang服务器

二、简单5步安装(分别在四台服务器上面进行如下操作)

1.下载nginx_signing.key

   wget http://nginx.org/keys/nginx_signing.key

2.验证通过nginx库的签名

   sudo apt-key add nginx_signing.key

3.vim /etc/apt/sources.list(在sources.list在文件末尾添加):

   deb http://nginx.org/packages/ubuntu/ codename nginx
   deb-src http://nginx.org/packages/ubuntu/ codename nginx

4. apt-get update

5. apt-get install nginx

三、master反向代理配置(只需要在190上面进行配置)

vim /etc/nginx/nginx.conf
在http{}里面添加如下内容:
upstream www.demotest.com
{
server 192.168.1.191:20180 weight=1;
server 192.168.1.192:20180 weight=1;
server 192.168.1.193:20180 weight=1;
weight;
} server
{
listen 80;
server_name www.demotest.com; location / {
proxy_pass http://www.demotest.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

结束语:

完成上述配置就可以享受分布式集群带来的快乐,不过这个还不是最优配置,同时还有很多细节没有加以考虑,比如,主服务器挂掉了怎么办。。。但是作为基础教程,主要就是以最简单的方式教大家去搭建分布式集群,同时以最小的代价来提高性能。后面会一步步的深挖相关的细节,比如怎么提高单台计算性能,怎么样去分配集群各台计算机的资源,怎么搭建高容灾分布式集群等

高并发教程-基础篇-之nginx负载均衡的搭建的更多相关文章

  1. 1.高并发教程-基础篇-之nginx负载均衡的搭建

    温馨提示:请不要盲目的进行横向扩展,优先考虑对单台服务器的性能优化,只有单台服务器的性能达到最优化之后,集群才会被最大的发挥作用. 一.架构图: 服务器准备:3台,ubuntu16.04系统maste ...

  2. 2.高并发教程-基础篇-之nginx+mysql实现负载均衡和读写分离

    技巧提示:mysql读写分离搭建好之后,配合nginx的负载均衡,可以高效的mysql的集群性能,同时免去麻烦的query分流.比如,sever1收到的请求就专门链接slave1从mysql读取数据, ...

  3. 3.高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建

    高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建 如果大家看了我的上一篇<2.高并发教程-基础篇-之nginx+mysql实现负载均衡和读写分离>文章,如果能很好的 ...

  4. 大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)

    课程简介: 随着互联网的发展,高并发.大数据量的网站要求越来越高.而这些高要求都是基础的技术和细节组合而成的.本课程就从实际案例出发给大家原景重现高并发架构常用技术点及详细演练. 通过该课程的学习,普 ...

  5. Nginx+tomcat组合实现高并发场景的动静分离和负载均衡方案

    简介 Java服务大多是跑在tomcat里,但是众所周知tomcat的并发性能没有优势(tomcat8及以上的版本可能有所改善),所以为了更好的适应高并发的应用场景,我们可以使用tomcat+ngin ...

  6. nginx负载均衡的搭建和简单例子

    一,nginx 下载地址:http://nginx.org/en/download.html 二,下载对应版本 三,打开下载的安装包:如下图 四,运行nginx.exe 1,这个是时候,程序运行都是一 ...

  7. Nginx(七):keepalived实现Nginx负载均衡服务器的双机高可用

    前言 之前咱们通过 Nginx(六):Nginx HTTP负载均衡和反向代理的配置与优化 和 Nginx+tomcat组合实现高并发场景的动静分离和负载均衡方案 这两篇文章了解了Nginx对高并发应用 ...

  8. 企业级Nginx负载均衡与keepalived高可用实战(一)Nginx篇

    1.集群简介 1.1.什么是集群 简单地说,集群就是指一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服务器. ...

  9. 企业级Nginx负载均衡与keepalived高可用实战(二)keepalived篇

    1.Keepalived高可用软件 1.1.Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实 ...

随机推荐

  1. Java并发框架——AQS超时机制

    AQS框架提供的另外一个优秀机制是锁获取超时的支持,当大量线程对某一锁竞争时可能导致某些线程在很长一段时间都获取不了锁,在某些场景下可能希望如果线程在一段时间内不能成功获取锁就取消对该锁的等待以提高性 ...

  2. (七十二)自定义通知NSNotification实现消息传递

    众所周知,iOS中一般在类之间传递消息使用较多的是delegate和block,还有一种是基于通知进行的消息传递,我们常常是使用系统的通知,来实现一些功能,例如利用键盘尺寸改变的通知,我们可以根据键盘 ...

  3. Common Bit Tasks

    1) If you XOR a bit with its own negated value, you will always get 1. Therefore thesolution to a ^ ...

  4. mysql5.6升级到5.7后Sequel Pro无法连接解决

    因为装ntop,brew自动升级了本地的Mysql,结果升级完成之后,使用Sequel Pro连接总是报错,使用mysql 命令行工具就没有问题. OSX版本 10.11.5 Mysql版本 5.6 ...

  5. iOS中 加强日志输出 开发技术总结

    对于那些做后端开发的工程师来说,看LOG解Bug应该是理所当然的事,但我接触到的移动应用开发的工程师里面,很多人并没有这个意识,查Bug时总是一遍一遍的试图重现,试图调试,特别是对一些不太容易重现的B ...

  6. Uva - 400 - Unix ls

    先计算出最长文件的长度M,然后计算列数和行数,最后输出即可. AC代码: #include <iostream> #include <cstdio> #include < ...

  7. javascript 把时间戳转为时间 ajax HTML拼装

    这个目的是记下来,好让我以后可以看一下,这个脚本可是反反复复写了我N天啊!! 全部写下,以备后用! Date.prototype.format = function(format) { var o = ...

  8. ios第三方数据请求 UI_15

    AppDelegate.m //指定根视图 self.window.rootViewController = [[[UINavigationController alloc]initWithRootV ...

  9. OJ题:奇偶归一猜想——求归一过程中的最大值

    题目: 题目内容: 奇偶归一猜想--对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1. 如n = 11,得序列:11, 34, 17, 52, ...

  10. BLOCK/字面量(语法糖)OC——第六天

    1.//block ,块语法,实质是匿名函数,是对C语言中函数的扩充,扩展: //block  语法可以用来保存一段代码或者用来调用一段封装好的代码: //block  语法由于是C语言实现的,所以执 ...