Nginx服务器架构简析

2014-7-3 杜世伟 Nginx

模块化结构的思想是一个很久的概念,但也正是成熟的思想造就了Nginx的巨大优越性。

我们知道Nginx从总体上来讲是有许多个模块构成的。习惯将Nginx分为5大模块分别为:核心模块,标准HTTP模块,可选HTTP模块,邮件服务模块和第三方模块。

阅读全文>>

标签: nginx upstream 负载均衡

评论(0) 浏览(14999)

Linux服务器集群系统二

2014-7-2 杜世伟 架构

1.引言 
在过去的十几年中,Internet从几个研究机构相连为信息共享的网络发展成为拥有大量应用和服务的全球性网络,它正成为人们生活中不可缺少的 一部分。虽然Internet发展速度很快,但建设和维护大型网络服务依然是一项挑战性的任务,因为系统必须是高性能的、高可靠的,尤其当访问负载不断增 长时,系统必须能被扩展来满足不断增长的性能需求。由于缺少建立可伸缩网络服务的框架和设计方法,这意味着只有拥有非常出色工程和管理人才的机构才能建立 和维护大型的网络服务。

针对这种情形,本文先给出LVS集群的通用体系结构,并讨论了其的设计原则和相应的特点;最后将LVS集群应用于建立可伸缩的Web、Media、Cache和Mail等网络服务。

2.LVS集群的通用体系结构 
LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服 务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。

LVS集群的体系结构 
图1:LVS集群的体系结构

为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。一般来说,LVS集群采用三层结构,其体系结构如图1所示,三层主要组成部分为:

阅读全文>>

标签: linux lvs

评论(0) 浏览(2414)

Cocos2d-x 加密Lua文件之Luajit

2014-7-1 杜世伟 cocos2d-x

cocos2d-x 3.*版本中luajit.exe的默认位置是 tools\cocos2d-console\plugins\plugin_luacompile\bin,不需要自己编译生成luajit.exe

执行luajit.exe -h
 
-b [选项]输入输出
此选项保存或列出字节码。下面的附加选项被接受:
-l -只有列表中的字节码。
-s -带调试信息(这是默认值)。
-g -保持调试信息。
-n名称 -设置模块名称(默认值:从输入的名字自动检测)
-t类型 -设置输出文件类型(默认值:从输出名称自动检测)。
-a拱 -覆盖架构目标文件(默认:本地)。
-o操作系统 -目标文件覆盖OS(默认:本地)。

阅读全文>>

标签: lua cocos2d-x luajit

评论(0) 浏览(3953)

Linux服务器集群系统一

2014-7-1 杜世伟 架构

本文介绍了Linux服务器集群系统--LVS(Linux Virtual Server)项目的产生背景和目标,并描述了LVS服务器集群框架及目前提供的软件,列举LVS集群系统的特点和一些实际应用,最后,本文谈论了LVS项目的开发进展和开发感触。

1. 背景

当今计算机技术已进入以网络为中心的计算时期。由于客户/服务器模型的简单性、易管理性和易维护性,客户/服务器计算模式在网上被大量采用。在九十年代中 期,万维网(World Wide Web)的出现以其简单操作方式将图文并茂的网上信息带给普通大众,Web也正在从一种内容发送机制成为一种服务平台,大量的服务和应用(如新闻服务、网 上银行、电子商务等)都是围绕着Web进行。这促进Internet用户剧烈增长和Internet流量爆炸式地增长,图1显示了1995至2000年与 Internet连接主机数的变化情况[1],可见增长趋势较以往更迅猛。

 
图1:1995至2000年Internet主机数的变化

阅读全文>>

标签: linux lvs

评论(0) 浏览(1938)

在window下如何通过protoc-gen-lua导出所需要的lua文件?

2014-6-14 杜世伟 Lua

在window下如何通过protoc-gen-lua导出所需要的lua文件?

最近在cocos2dx的项目中,需要在LUA脚本层使用protobuf协议。于是开始研究protobuf在LUA下的实现,将完整的过程记录了下来,希望对其它人能有所帮助。

1、下载protoc-gen-lua

可以通过HG从服务器(hg clone https://code.google.com/p/protoc-gen-lua/)上下载最新的版本。

简单介绍一下里面的三个目录:

example 存放的一个示例协议,

阅读全文>>

标签: lua protoco

评论(0) 浏览(4344)

用Linux命令行生成随机密码的十种方法

2014-6-7 杜世伟 Linux

用Linux命令行生成随机密码的十种方法

1、这种方法使用SHA算法来加密日期,并输出结果的前32个字符:

date +%s | sha256sum | base64 | head -c 32 ; echo
2、这种方法使用内嵌的/dev/urandom,并过滤掉那些日常不怎么使用的字符。这里也只输出结果的前32个字符:

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
3、 这种方法使用openssl的随机函数。如果你的系统也许没有安装openssl,你可以尝试其它九种方法或自己安装openssl。

openssl rand -base64 32
4、 这种方法类似于之前的urandom,但它是反向工作的。Bash的功能是非常强大的!

阅读全文>>

标签: linux openssl passwd sha

评论(0) 浏览(18678)

shell 随机从文件中抽取若干行的实现方法

2014-6-4 杜世伟 shell

方法一

        通过shuf命令:

  • shuf 命令的选项:
  • -e, --echo :将每个参数视为输入行
  • -i, --input-range=LO-HI :将LO 到HI 的每个数字视为输入行
  • -n, --head-count=行数 : 最多输出指定的行数
  • -o, --output=文件 :将结果输出到指定文件而非标准输出
  • --random-source=文件 :从指定文件获得随机比特
  • -z, --zero-terminated :以0 结束行而非新行
  • --help :显示此帮助信息并退出
  • --version :显示版本信息并退出

阅读全文>>

标签: linux sort awk shuf

评论(0) 浏览(10847)

高性能网站架构之负载均衡 Nginx的简介

2014-6-3 杜世伟 Nginx

什么是Nginx

         Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新浪、网易、腾讯等。

阅读全文>>

标签: nginx 负载均衡 反向代理服务器

评论(0) 浏览(11293)

linux 符号链接与硬链接的区别

2014-5-23 杜世伟 Linux

linux下我们可以把符号链接,也就是软连接 当做是 windows系统里的 快捷方式。

硬链接 就好像是 又复制了一份.

ln 1.txt 2.txt   这是硬链接,相当于复制,不可以跨分区,但修改1.txt,2.txt会跟着变,若删除1.txt,2.txt不受任何影响。

ln -s 3.txt 4.txt  这是软连接,相当于快捷方式。修改4.txt,3.txt也会跟着变,若删除3.txt,4.txt就坏掉了。不可以用了。

阅读全文>>

标签: linux ln

评论(0) 浏览(16387)

linux sed

2014-5-22 杜世伟 Linux

    sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等

阅读全文>>

标签: linux sed

评论(0) 浏览(13465)

Powered by emlog 沪ICP备2023034538号-1