- 博客(284)
- 资源 (11)
- 收藏
- 关注
原创 centos lvs+keepalived+mysql实现mysql数据库热备主主复制
实验环境:linux:centos6.6虚拟ip(vip):192.168.135.199mysql master:192.168.20.193mysql slave:192.168.20.195(这里只是为了后文方便区分,一个叫master,一个叫slave,其实在主主复制中,都是master也都是slave,没有主从之分)mysql的版本:[root@localho
2016-07-15 15:58:38 5345 1
原创 centos使用nginx反向代理实现负载均衡
nginx做负载均衡的优点:1、工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名、目录结构,它的正则规则比HAProxy更为强大和灵活,这也是它目前广泛流行的主要原因之一,nginx单凭这点可利用的场合就远多于LVS了2、nginx对网络稳定性的依赖非常小,理论上能ping通就就能进行负载功能,这个也是它的优势之一;相反LVS对网络稳定性依赖比较大,这点本人深有体会
2016-07-14 20:17:33 4838
原创 centos部署lvs+keepalived+apache/tomcat实现高性能高可用负载均衡
前言:常用的有的负载均衡软件有lvs、haproxy、nginx一般lvs和keeplavied一起使用lvs是实现负载均衡作用的,即将客户端的需求采用特定的负载均衡算法分发到后端的Web应用服务器上,Keepalived是用来实现高可用的,即保证主lvs宕机后,从lvs可以在很短时间顶上,从而保证了系统或网站的稳定性注意事项1、虚拟ip不需物理机,设置ip前先本机pi
2016-07-14 19:10:32 8326
原创 php+中文分词scws+sphinx+mysql打造千万级数据全文搜索
Sphinx是由俄罗斯人Andrew Aksyonoff开发的一个全文检索引擎。意图为其他应用提供高速、低空间占用、高结果 相关度的全文搜索功能。Sphinx可以非常容易的与SQL数据库和脚本语言集成。当前系统内置MySQL和PostgreSQL 数据库数据源的支持,也支持从标准输入读取特定格式 的XML数据。Sphinx创建索引的速度为:创建100万条记录的索引只需3~4分钟,创建1000万
2016-07-12 21:33:30 32619 3
原创 php结合redis实现高并发下的抢购、秒杀功能
抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少("超卖"问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题常规写法:查询出对应商品的库存,看是否大于0,然后执行生成订单等操作,但是在判断库存是否大于0处,如果在高并发下就会有问题
2016-07-09 10:09:01 79364 21
原创 linux开发php c扩展实例
php取得成功的一个主要原因之一是它拥有大量的可用扩展,web开发者无论有何种需求,这种需求最有可能在php发行包里找到php发行包包括支持各种数据库,图形文件格式,压缩,XML技术扩展在内的许多扩展PHP扩展(PECL)跟php引擎一样都是使用c语言开发php扩展开发需要注意什么?1、开发扩展比使用PHP开发相同功能成本与难度都要更高2、后期维护不易3、系统及PH
2016-07-08 23:24:50 2502
原创 centos安装mongodb3.0及php mongo扩展和代码测试
注意事项:1、对于mongodb3.x php的mongo扩展要使用1.6以上,当时因为这个问题调试挺久,发现php的mongo扩展使用的1.4,总是连不上2、mongodb3.x和mongodb2.x的安全认证机制不一样,mongodb3.x创建用户使用db.createUser,mongodb2.x使用db.addUser3、mongodb的客户端管理工具NoSQL Manager、rockmongo
2016-07-06 15:11:29 15346 3
转载 Reactjs 入门实例教程
来自:http://www.ruanyifeng.com/blog/2015/03/react.html现在最热门的前端框架,毫无疑问是 React 。上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑。React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC
2016-07-30 20:31:29 901
转载 laravel5——数据和模型(Eloquent ORM)
Laravel 有三宝,路由、容器和 Eloquent ORM,Eloquent ORM 实际上是 Laravel 框架数据库组件的一个部分,也是最为重要和常用的,所以我们在说 Laravel 数据库组件时,往往指的是 Eloquent ORM。当然,数据库篇的文章肯定要全面讲述,这样有助于理解,也能帮助一些在这一块遇到问题的朋友。数据库组件是一个比较独立的组件,只依赖很少的东西,通过 c
2016-07-29 11:54:45 1497
原创 大型网站技术架构:核心原理与案例分析—第一章:大型网站架构演化
1,大型网站软件系统特点:1)高并发、大流量:需要面对高并发用户,大流量访问2)高可用:系统7X24小时不间断服务3)海量数据:需要存储、管理海量数据,需要使用大量服务器4)用户分布广泛、网络情况复杂5)安全环境恶劣:由于互联网的开放性,使得网站更容易手动攻击6)需求快速变更,发布频繁7)渐进式发展
2016-07-29 11:51:44 580
原创 c语言结构体操作
数组(Array),它是一组具有相同类型的数据的集合。但在实际的编程过程中,我们往往还需要一组类型不同的数据,例如对于学生信息登记表,姓名为字符串,学号为整数,年龄为整数,所在的学习小组为字符,成绩为小数,因为数据类型不同,显然不能用一个数组来存放。在C语言中,可以使用结构体(Struct)来存放一组不同类型的数据。结构体的定义形式为:struct 结构体名{ 结构体所包
2016-07-28 19:37:13 1013
原创 laravel5数据库操作
<?phpnamespace App;use Illuminate\Database\Eloquent\Model;use Illuminate\Database\Eloquent\SoftDeletes;use DB;class User extends Model { static function getResult(){ $res=null; /* //插入
2016-07-27 21:26:32 1649
原创 c语言指针操作
指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明。指针变量声明的一般形式为:type *var-name;在变量声明的时候,如果没有确切的地址可以赋值,为指针变量赋一个 NULL 值是一个良好的编程习惯。赋为 NULL 值的指针被称为空指针。NULL 指针是一个定义在标准库中的值为零的常量
2016-07-27 21:22:35 546
原创 visual c++ 6.0显示行号
visual c++ 6.0本身并不能显示行号,所以若想显示行号,得用插件才行,方法如下:1、在网上下载Visual C++ 6.0的行号显示插件VC6LineNumberAddin。2、打开Visual C++ 6.0,选择“工具”,然后选择“定制”。3、选中附加项和宏文件,点击浏览,找到下载好的*.dll文件。4、添加好后,重新启动Visual C++ 6.0,OK。
2016-07-21 16:54:39 7658 3
原创 c语言位运算、a++、++a操作
位运算,就是对一个比特(Bit)位进行操作。8个比特构成一个字节(Byte)C语言提供了六种位运算符:运算符 & |^ ~ >>说明 按位与 按位或 按位异或 取反 左移 右移按位与运算(&)一个比特(Bit)位只有 0 和 1 两个取值,只有参与&运算的两个位都为 1 时,结果才为 1,否则为 0。例如1&1为 1,0&0为 0,1&0也为 0,这和
2016-07-21 16:47:04 4060
原创 C语言开发环境搭建
C和C++区别:C++可以兼容大部分C语言编程。C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。C++支持多种编程范式 --面向对象编程、泛型编程和过程化编程。C语言是C++的基础,C++和C语言在很多方面是兼容的。C++一般被认为是C的超集合(Superset),但这并不严谨。大部分的C代码可以很轻易的在C++中正确编译,但仍有少数差异,导致某些有效的C代码在C++
2016-07-21 16:45:51 7941
原创 phpems导出成绩增加自定义字段
导出成绩url:http://localhost/phpems/index.php?exam-teach-users-outscore&basicid=7调用的文件:index.php 中 require "lib/init.cls.php";然后 include $modulefile;即app/exam/teach.php中的这行:switch($
2016-07-21 16:42:56 2992 1
原创 virtualbox给linux虚拟机扩容
硬盘分区有三种,主分区、扩展分区、逻辑分区linux没有主分区和逻辑分区linux只有挂载点的区别,有目录、交换分区、home 分区hda是使用了ide接口的硬盘的名称,sda是sata接口的硬盘的名称.在最新的2.6.19内核里,所有的硬盘都叫sdasda 指 a的硬盘;sda1 是 a硬盘下,第一个主分区。最多4个主分区sda5 是 a硬
2016-07-21 14:56:52 645
转载 IDE、SATA、SCSI、SAS、FC、SSD 硬盘类型
IDE磁盘================IDE(Integrated Drive Electronics), 本意是指把控制器与盘体集成在一起的硬盘驱动器,是一种硬盘的传输接口, 有另一个名称叫做ATA(Advanced Technology Attachment),指的是相同的东西。 特点:一般使用16-bit数据总线, 每次总线处理时
2016-07-21 14:13:45 705
转载 VirtualBox为linux硬盘扩容
一开始安装linux虚拟机的时候什么都没有考虑,想想给个10G够用了吧。结果要写代码装了个eclipse,还要下载好大的代码文件,于是就悲催了。网上搜罗了方法,整理了一下,写在这里:要给虚拟机上的linux系统扩容有以下几步:1. VirtualBox上硬盘扩容。2. linux系统上挂载新的磁盘分区。3. 修改挂载磁盘分区权限。假设
2016-07-21 13:54:22 575
原创 python mvc框架django搭建项目
首先搭建了python3环境,参考我的 centos7搭建python3并和python2共存创建软连接ln -sf /usr/local/python3/bin/django-admin.py /usr/bin/django-adminln -s /usr/local/python3/bin/pip3 /usr/bin/pip3创建项目mkdir mysite
2016-07-20 23:08:42 2325
原创 python3提示sqlite3模块不存在解决方法
首先yum install sqlite-devel -y然后重装下python3(一定要重装)# cd Python-3.4.2# ./configure --prefix=/usr/local/python3# make && make install测试sqlite3模块,没提示错误就说明成功了[root@mail Python-3.4.2]# p
2016-07-20 22:38:52 7335
原创 memcached存储大数据的问题
memcached存储单个item最大数据是在1MB内(redis是512M),假设数据超过1M,存取set和get是都是返回false,并且引起性能的问题。我们之前对排行榜的数据进行缓存,因为排行榜在我们全部sql select查询里面占了30%,并且我们排行榜每小时更新一次,所以必须对数据做缓存。为了清除缓存方便,把全部的用户的数据放在同一key中,因为memcached:set的时候
2016-07-20 18:56:55 2417
原创 centos安装python mvc框架django1.9
Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。Django是一个开放源代码的Web应用框架,由Python写成。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。我是先安
2016-07-20 18:40:21 448
转载 从程序员到项目经理(二十一):谁都需要成就感
说起成就感,很多人会认为它来源于事业的成功,是一种“春风得意马疾蹄、一日看尽长安花”的快感,如果只有这样才能获得成就感的话,那我们普通人就只能一辈子郁郁寡欢了。其实成就感不只来源于事业有成,更来源于工作和生活中的每一件小事。管理者保护好、培养并利用好这种成就感,可以将一个人的内在潜力充分激发出来,产生令人意想不到的力量。1.成就感是人的基本需求成就感是指一个人做完一件事情或者做一件
2016-07-20 18:09:51 470
原创 python3的多线程操作
python3 线程中常用的两个模块为:_threadthreading(推荐使用)thread 模块已被废弃。用户可以使用 threading 模块代替。所以,在 python3 中不能再使用"thread" 模块。为了兼容性,python3 将 thread 重命名为 "_thread"。test.py#!/usr/bin/python3import _thr
2016-07-20 18:05:11 3087
原创 python3使用sax操作xml
python使用SAX解析xmlSAX是一种基于事件驱动的API。利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件;而事件处理器则负责对事件作出相应,对传递的XML数据进行处理。1、对大型文件进行处理;2、只需要文件的部分内容,或者只需从文件中得到特定信息。3、想建立自己的对象模型的时
2016-07-20 17:56:04 3871
原创 敏捷开发和瀑布开发的区别
个人觉得敏捷开发强调以人为中心,快速迭代,客户参与多沟通,减少不必要的文档,包括Scrum和XP优点:快速适应变化,做出的项目比较接近客户需要的缺点:文档不多,如果人员流动大,维护相对更难瀑布开发强调文档,就是不同阶段按照顺序自上而下而来,如需求、设计、编码、测试(单元测试、系统测试)、维护,每个阶段尽量做得最好优点:每个阶段可作为检查点,前一阶段完成只需关注后一阶段
2016-07-20 17:45:42 2311
原创 3W1H分析法
通常对工作梳理,可以采用5W1H法,即:Why——为什么干这件事?(目的);What——什么事情?(对象);Where——在什么地方执行?(地点);When——什么时间执行?什么时间完成?(时间);Who——由谁执行?(人员);How——怎样执行?采取哪些有效措施?(方法)。在一般的项目中,Why和where往往不
2016-07-20 17:39:38 28456
转载 从程序员到项目经理(二十二):以德服人才能口服心服
(管理有三种方式:威逼、利诱、感召,看看你的经理是哪一种?你又是如何看待华为公司的儿狼性文化呢?)说起以德服人,相信很多人会想到电影《功夫皇帝方世玉》中的那个雷老虎,他的口头禅便是“以德服人”。雷老虎每次生气想要发作的时候,便会说“我雷老虎要以德服人”,以此压制自己的怒火。在项目管理中,我们也应该学习雷老虎以德服人的精神。蒙牛集团创始人牛根生曾说:“小胜靠智、大胜靠德”,蒙牛后来因
2016-07-20 17:36:35 389
转载 从程序员到项目经理(二十六):项目管理不能浑水摸鱼
怎样才算是一名合格的项目经理?最根本的一点,就是要胸有成竹,否则管项目就好比浑水摸鱼,最后的结果就是得到一只死鱼!成功的项目经理都有一个共同的特征,那就是胸有成竹。如果做不到这一点,意味着项目经理缺乏总体的盘算,只能走一步看一步,项目究竟会走多少弯路,那就只能看运气了。1.胸有成竹是项目经理胜任的标志顾名思义,胸有成竹就是说一个画家,在画竹子之前,心里就有了竹子的形象,画家
2016-07-20 17:34:58 501
转载 唐僧为什么可以领导孙悟空(项目管理)
《西游记》是一部优秀的小说,被多次改编成影视作品,激励了一代又一代中国人的成长。很多企业也把唐僧师徒视为团队的楷模,作为培训的教材。对于团队,我有自己的认知,结合《西游记》和大家一起分享。小时候读西游记总有一个疑问——那个唐僧那么无能,为什么孙悟空非要带着他去取经呢?如果孙悟空自己去取经,不就麻烦少多了么?后来长大了,工作了,先被人领导,之后又领导别人,总算明白了,原来唐僧领导孙悟空是
2016-07-20 17:29:54 753
翻译 软件公司的两种管理方式
这篇文章是我的一个外国的同事Gareth推荐给我的,我和他一起工作过一段时间。他之所以觉得非常不错,是因为这篇文章让他身有体会,他觉得我也一定会有体会,并让我考虑一下翻译到我的blog上来。我看完后觉得很有代表性,而且觉得说得太对了,所以翻译过来,希望大家都读一读,最好转给你的公司老板。 这篇文章来源于 StakeExchange 上的一个问题——“为什么BA和PM的薪水要比程序员要高?
2016-07-20 17:28:50 563
转载 从程序员到项目经理
在希腊德尔斐的阿波罗神庙上,刻得着一句神秘的箴言:“认识你自己”。从某种程度上来说,我们都是自己的“最熟悉的陌生人”。认识自己的位置,是每个人获得成长的第一堂课。一个人的位置,对其言行的影响是至关重要的,俗话说:“屁股决定脑袋”,虽然听着粗俗,却饱含人生哲理。既然我们屁股在项目经理的位置上,就应该像项目经理一样去思考问题,做事情。一.项目经理的处境经过数年的打拼,怀着美好的向往,我
2016-07-20 17:28:04 354
转载 项目管理心得:一个项目经理的个人体会、经验总结
前言: 介于许多人对项目经理这个职位的陌生和含糊,将自己的切身经历和阅读、交流得到的一些经典案例整理出来,有朋友问我,这篇文章出处在哪里?这些经历很多不是一个人的经历,这些总结很多也不是出自一个人之手,如同我们觉得一段代码写的很好,必定会收藏整理成为自己的一部分加以完善共享,接着不断的有人完善共享下去,我们谁都不敢说自己是最聪明的人,但只要不断的学习总结别人已经有的经
2016-07-20 17:27:26 744
原创 windows安装composer及使用教程
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们安装1、下载安装文件:https://getcomposer.org/Composer-Setup.exe,一路安装就行2、在php.ini文档中打开extension=php_openssl.dll3、重启apache4、执行cmd,运行:composer -
2016-07-20 17:25:42 673
转载 Flask、Django、Pyramid三个框架的对比
1.简介在python web框架的世界里充满了选择。有Django,Flask,Pyramid,Tornado,Bottle,Diesel,Pecan,Falcon等等的来吸引开发者的注意。作为一个开发者,你想要从中选择一个框架来帮你完成项目,并且能继续做大事情。我们将关注Flask、Pyramid和Django。它们是微框架和商业级web服务的典范。为了让你在这三个中做选择的时
2016-07-20 16:57:48 4006
原创 python3字典、列表和json对象互转
python3可以使用json模块操作jsonjson.dumps(): 对json进行编码,对应php的json_encode()json.loads(): 对json进行解码,对应php的json_decode()test.py#!/usr/bin/python3import json#python字典类型转换为json对象data = { 'id'
2016-07-19 23:48:25 31147
axure省市联动效果
2016-09-22
一个基于html5 css3的ajax异异步上传插件 好用
2012-09-08
plupload_1_5_4上传插件 基于jquery 有demo
2012-09-08
一个基于jquery的ajax异步上传插件 好用
2012-09-08
ajaxfileupload1.0好用
2012-09-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人