自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

熠耀之森

互联网相关技术

  • 博客(57)
  • 资源 (3)
  • 收藏
  • 关注

原创 博客搬新家了

博客搬新家了,申请了个人域名www.lightthewoods.me,今后可能会有部分文章同步到CSDN,但是大部分会在新的个人博客发布,大家快来看看留个言吧~

2016-01-27 14:28:24 1389

原创 当黑客马拉松遇上全栈工程师

4月17号参加了新浪微博平台架构组织的HackAthon24小时黑客马拉松活动。想想还是第一次参加这一类的技术活动,心情上感觉新奇又激情。其实感觉后端工程师在这种创新类比赛上优势不明显,幸遇@赵青-Q不嫌弃,热情的接纳了我,终于有机会得以参赛。曾经听前辈们闲聊的时候提到过,黑客马拉松应该是起源于FaceBook的一些小活动。每到了周五的下午,开发任务不忙的工程师们会聚在一起

2015-05-04 17:03:03 2360

原创 博客之星的评选结束了,为互联网后端的技术大牛们鸣不平

博客之星的评选结束了,我因为没有去拉票所以顺理成章的落选了。(平时经常转载我文章的各网站小编们怎么没有给我投个票啊!!!难道都是机器抓站吗。。。)翻看了博客之星排名前10的大神们的文章,发现基本上90%都是主要研究移动端相关领域的技术博文,如android HTML5等等。我个人觉得虽然移动端目前是互联网业务增长最快的一个发现,但是一个好的移动端应用,一个具有亿级用户的APP,是少不了一个稳定的后

2015-02-20 21:39:40 2396 1

原创 长期关注我博客的朋友,期待你宝贵的一票

又到了博客执行评选的活动了,期待您宝贵的一票~http://vote.blog.csdn.net/blogstar2014/details?username=networm3#content

2015-01-07 16:14:40 1833

原创 多线程C调用python api的陷阱

众所周知,用脚本语言编写的服务(wsgi接口)都需要一个server容器,常见的如php的php-fpm, lightd等。python中一般是用的uwsgi,uwsgi是在wsgi的基础上的一种新的协议,可以用来部署python等脚本程序的运行。然而在不熟悉uwsgi的代码架构和c调用python的api情况下进行开发可能会遇到一些意想不到的问题。我们先看一段代码,下面这段代码是用的Flas

2015-01-06 11:45:42 4006

原创 轻轻松松在centos上部署docker服务

首先,因为docker的运行需要linux本身某些组件和内核特性的支持,所以要确保centos的版本大于6,并且内核版本大于2.6.32-431。可以简单的升级centos6到最新版本。sudo yum upgrade然后安装cgroupsudo yum install libcgroupservice cgconfig start #启动croup服务lssubsys

2014-08-01 15:45:59 5316

原创 谈谈如何设计秒杀服务

上周末去百度参加了一场LBS部门的招聘专场,虽然刚换了工作,但是人力资源美眉盛情邀请,而且是周末也不用请假,本着去学习的心态去试了一下。以前去百度面试过几次,面试官给人的感觉还是很nice的,虽然不会像很多外企的面试官会闲到给你讲课,但是会和你一起讨论面试的问题,共同的提高。        百度招聘,区别于360等新兴创业型公司,更偏重于工程师的设计技能和思维方法。百度招聘不会深入的考察工程师

2014-07-26 17:33:50 2815

原创 memcached源码探秘(一)—— hash_table

memcached在删除hash_table中的单向表的

2014-07-14 23:35:09 1798

原创 memcached几个容易被忽略但非常有用的命令

Memcached从1.2.4版本新增CAS(Check and Set)协议,用于处理同一个ITEM(key-value)被多个session更新修改时的数据一致性问题。 你曾经是否也有想知道memcached里面都存了哪些数据的需求,你是否也曾经在寻找一个方法能像redis一样可以遍历memcached所有的key

2014-07-14 11:25:03 2612

转载 python的一个编解码错误

python的一个编解码错误发表于2012/10/24由latlontude(1)出错的代码两者有什么区别呢?这里的字符串格式化默认是先把每个对象转换为unicode的 (这里是按照a,b的类型进行判断确认最终输出字符串的编码,如果a,b都没有显式声明为unicode,则最终转换的类型为编码为sys.getdefaultencoding()得到的字符集,否则如果a/b任意一个为

2014-06-17 14:33:43 8986 1

转载 Linus:利用二级指针删除单向链表

感谢网友full_of_bull投递此文(注:此文最初发表在这个这里,我对原文后半段修改了许多,并加入了插图)Linus大婶在slashdot上回答一些编程爱好者的提问,其中一个人问他什么样的代码是他所喜好的,大婶表述了自己一些观点之后,举了一个指针的例子,解释了什么才是core low-level coding。下面是Linus的教学原文及翻译——“At the op

2014-02-17 16:43:48 1699

原创 Tornado用回调代替gen

Tornado利用python的yield机制,用gen模块可以用同步的代码逻辑书写异步调用的代码。一般的,在程序开发过程中,方便的书写逻辑必然会带来运行上的额外开销。笔者的一个整合型爬虫服务设计大量的异步调用逻辑,出现HTTP超时的比例大概为1%,查看被调用的服务日志未出现超时,怀疑是gen的协程机制未有能使IOLoop的读时间及时响应。下面就将常见的两种异步调用场景从Tornado的gen

2013-12-23 18:01:18 4416

原创 OpenStack基础组件kombu杂谈

作为一个典型的分布式系统,OpenStack的各模块之间也需要进行大量的消息传递。OpenStack采用的是AMQP的消息队列方案。AMQP是一个广泛使用的消息队列的规范。服务端常采用的是RabbitMQ(在AMQP的规范中,消息队列的服务端被成为broker),现在已收归vmware麾下,使用erlang实现。OpenStack除了支持RabbitMQ之外,还支持apache上开源的Qpid

2013-12-18 09:56:12 4858

原创 redis设置key过期时间

redis是一个广泛应用的key-value型内存数据库,和memecached一样,key是可以被设置生存周期的。redis设置key的过期时间非常简单:SETEX mykey 10 "Hello"这样就给mykey设置了10秒的生存周期。但是当你使用了redis其他的数据结构,比如LIST,HMAP等,就没有现成的命令可以使用了。不过在redis中,上面的命令本来就等效

2013-12-11 17:16:47 14029

原创 Tornado生产骨架——mownfish介绍

曾经给大家介绍了许多优秀的开源项目,今天为大家介绍我的在githup上开源的一个tornado生产骨架——mownfish(https://github.com/Ethan-Zhang/mownfish),欢迎大家拍砖~Tornado是用python写的一个基于linux epoll的异步非阻塞IO实时框架,最早产生于FriendFeed,09年被Facebook收购并开源。这个框架被

2013-12-03 15:39:05 4693

原创 Tornado多进程方式log切分错误的解决方案

tornado多进程log日志切分错误的解决方式

2013-11-18 16:34:43 6367 2

原创 centos 终端字体错位个别字母中间有间隔的解决

yum -y install dejavu-sans-* dejavu-serif-fonts

2013-08-22 11:24:59 3647

原创 SSH私钥管理ssh-agent的使用

我所在的公司是使用git来管理和部署源代码的,所以需要将自己的私钥从开发机带到线上机ssh -A [email protected]但是发现跳到线上机后进行git fetch,提示并没有找到开发机上得私钥,私钥没有带过来。经过几天搜索,发现是开发机需要启动ssh-agentssh-agent bash --login -issh-add这样就可以把自己的私钥加密缓存,ssh内部的

2013-08-01 11:20:01 3904

原创 OpenStack源码探秘(二)——Oslo.config

OpenStack源码探秘(一)——Nova-SchedulerOpenStack源码探秘(二)——Oslo.Config最近因为一直忙于找工作和办理入职离职等相关手续,许久没有更新博客了。笔者这次换工作最后去了一家互联网公司,酷讯旅游。也是想体验一下互联网公司的文化和理念,学习一些这个领域的知识。工作内容大多是互联网应用的后台系统研发,常用语言是Python。酷讯总体上来说还是一

2013-05-19 15:20:13 11201 2

原创 OpenStack源码探秘(一)——Nova-Scheduler

OpenStack源码探秘(一)——Nova-SchedulerOpenStack源码探秘(二)——Oslo.Config许久没有更新OpenStack源码探秘系列了。最近换工作颇不顺利,许多笔者心仪的公司都因为这样或那样的原因而失之交臂,这样下去可能会考虑到互联网公司做些服务器端的工作。晚上回到家心情都不太好,懒得动笔,不过经过了几天起伏,心态也慢慢调整过来了,今天就给大家分享一篇N

2013-04-11 10:25:47 8630 5

原创 简单工厂模式,工厂方法模式和抽象工厂模式的异同

最近有朋友问我三种工厂模式的区别,这里做个简要的归纳。简单工厂模式,工厂方法模式和抽象工厂模式都是属于创建型设计模式,这三种创建型模式都不需要知道具体类。我们掌握一种思想,就是在创建一个对象时,需要把容易发生变化的地方给封装起来,来控制变化(哪里变化,封装哪里),以适应客户的变动,项目的扩展。用这三种设计模式都可以实现,那究竟这三种设计模式有什么异同呢?下面根据这三者之间的特点,优点,

2013-04-09 10:16:09 1657

原创 C/C++ Hash表

Hash表这种数据结构在许多语言中是原生的一个集合对象,在实际中用途极广,主要有这么几个特点:访问速度快大小不受限制按键进行索引,没有重复对象用字符串(id:string)检索对象(object)C实现Hash表今天整理以前在学校写的一些算法,翻出来一个hash表的实现,就贴出来,自己也温习温习。先看看头文件,也就是数据结构的定义,相当于java中的接口

2013-03-27 10:00:33 8195 1

原创 Glance源码架构探秘(四)

Glance源码架构探秘(一)Glance源码架构探秘(二)Glance源码架构探秘(三)Glance源码架构探秘(四)最近感情生活颇不顺利,耽搁了很长时间。今天抽出时间来给大家继续分享Glance源码架构探秘,详细阐述glance镜像操作部分。前几章,我们花了很大的篇幅,讨论了Glance服务的WSGI框架部分,包括网络编程eventlet库,绿化的w

2013-03-21 11:08:45 3317 3

转载 Linux下如何知道文件被那个进程写

转载自系统技术非业余研究本文链接地址: Linux下如何知道文件被那个进程写晚上朔海同学问:一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么

2013-03-13 09:43:09 1540

原创 Glance源码架构探秘(三)

Glance源码架构探秘(一)Glance源码架构探秘(二)Glance源码架构探秘(三)Glance源码架构探秘(四)上一章我们分析了OpenStack中如何用eventlet库创建一个“绿化”的协程式web server,以及WSGI相关概念及在Python中的参考实现,本章我们将具体地讲解WSGI程序内部的框架。其实,简单的说,Glance及其他OpenS

2013-03-13 09:00:51 4405 2

原创 Linux的IO复用

首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。不管是文件,还是套接字,还是管道,我们都可以把他们看作流。之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数据,但是流中还没有数据,(典型的例子为,客户端要从socket读如数据,但是服务器还没有

2013-03-11 14:29:23 3978 2

原创 Glance源码架构探秘(二)

Glance源码架构探秘(一)Glance源码架构探秘(二)Glance源码架构探秘(三)Glance源码架构探秘(四)上一章的最后,为大家介绍了Glance服务的对外启动接口/bin/glance-api,其中最用要的部分就是通过server = eventlet.wsgi.Server()生成了一个http server,并通过server.start()启动了

2013-03-11 09:54:30 4445 3

原创 Glance源码架构探秘(一)

Glance源码架构探秘(一)Glance源码架构探秘(二)Glance源码架构探秘(三)Glance源码架构探秘(四)前言从本章开始,将会陆续为大家分享有关OpenStack各组件模块代码架构的探秘。首先从OpenStack的镜像管理模块Glance开始,原因是Glance只负责镜像的上传,下载等管理,功能对比Nova模块来说相对比较少,便于代码结构的分析。还

2013-03-08 22:34:39 6804 4

原创 Python可调用对象__call__方法的用法分析

前言最近有许多朋友私信问我,Python的可调用对象到底有什么用处,为什么要费事的重载括号而不是直接绑定类的普通方法。下面就来为大家分享__call__可调用对象的一些感悟。精简代码,方便接口调用的“约定俗成”class route(object): def __init__(self, res) self.resource = res @clas

2013-03-07 10:53:16 8746 1

原创 OpenStack多节点部署(六)——Glance

OpenStack多节点部署(一)——服务器选型OpenStack多节点部署(二)——操作系统安装OpenStack多节点部署(三)——网络配置OpenStack多节点部署(四)——KeyStoneOpenStack多节点部署(五)——NovaOpenStack多节点部署(六)——glance本章将为大家介绍OpenStack的镜像管理系统glance,

2013-02-27 17:17:33 4736

翻译 MySQL服务器安装完之后如何调节性能

原文作者: Peter Zaitsev原文来源: http://www.mysqlperformanceblog.com/2006/09/29/what-to-tune-in-mysql-server-after-installationWhat to tune in MySQL Server after installationMy favorite question dur

2013-02-23 16:36:41 1204 1

原创 SSH使用ssh-keygen远程登录主机免输入密码

环境:本地主机名:ha01eth0: 192.168.1.100 //对外IP地址远程主机名:ha02eth0: 192.168.1.200 //对外IP地址本地主机ha01配置:[root@ha01 /]# cd /etc/ssh[root@ha01 ssh]# ssh-keygen -t rsa -N "" (该步骤生成key公私密钥对,-N ""表示密钥对

2013-02-19 21:48:41 1863 2

原创 灾备术语——RPO and RTO

RPO——recovery point objectives恢复点目标RPO是实时地复制您业务信息中的每一个数据恢复事务。短时间的RPO能够更少地丢失数据。例如,一个五分钟的RPO表明必须在五分钟内恢复数据,而一个一小时的PRO表明这种数据恢复的弱点在于,在这一个小时内,要备份的数据可能已经丢失了。相反地,一个零分钟的PRO表明没有数据可以丢失,因为您的数据及时地备份、复制或记录下来,从而阻止

2013-02-19 14:58:13 5098 1

原创 OpenStack服务器节点迁移(修改IP)后引发的nova-compute不启动

前些日子一直在忙活将OpenStack的那几台服务器从部门机房搬迁到集团的大机房去,由于要修改节点的public_ip,出现了许多问题,也是经过了2个不免之夜,终于将问题都解决了,在这里将过程记录一下,和大家分享。原IP为auto loiface lo inet loopbackauto eth0iface eth0 inet staticaddress 10.2.116.14

2013-02-19 11:31:50 4948

转载 解读NoSQL数据库的四大家族

2011-09-16 16:01 孙瑞 TT数据库在目前的企业IT架构中,系统管理员以及DBA都会考虑使用NoSQL数据库来解决RDBMS所不能解决的问题,特别是互联网行业。传统的关系型数据库主要以表(table)的形式来存储数据,而无法应对非结构化数据的挑战。在进行数据标准化的过程中,关系型数据库性能遭遇了瓶颈。NoSQL顾名思义就是Not-Only SQL,它可以作为关系型数据库的

2013-02-18 16:16:45 1224 1

原创 OpenStack多节点部署(五)——Nova

OpenStack多节点部署(一)——服务器选型OpenStack多节点部署(二)——操作系统安装OpenStack多节点部署(三)——网络配置OpenStack多节点部署(四)——KeyStoneOpenStack多节点部署(五)——NovaOpenStack多节点部署(六)——glance这章将为大家介绍OpenStack最重要的核心组件,虚拟机管理

2013-02-17 21:45:24 6599 7

原创 Linux查看CPU信息、机器型号等硬件信息

做性能测试需要记录性能测试机器的硬件信息,现将需要的命令总结如下:查看CPU信息(型号)cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c8 Intel(R) Xeon(R) CPU E5410 @ 2.33GHz(看到有8个逻辑CPU, 也知道了CPU型号)cat /proc/cpuinfo | grep phy

2013-02-17 14:12:21 1552

转载 面向云计算的数据中心网络体系结构设计

发表时间:2012-7-6 王聪 王翠荣 王兴伟 蒋定德 来源:万方数据20世纪90年代,客户端/服务器的计算模式得到了广泛应用,在这种计算模式中,数据中心用来存放服务器并提供服务。近几年,互联网技术的蓬勃发展掀起了建设数据中心的高潮,网上银行、证券和娱乐资讯等网络服务逐渐普及,特别是云计算?技术的发展为网络服务形式带来重大变革,使数据中心的发展进入了鼎盛时期。    在云

2013-02-14 10:48:03 9970 1

原创 OpenStack多节点部署(四)——KeyStone

OpenStack多节点部署(一)——服务器选型OpenStack多节点部署(二)——操作系统安装OpenStack多节点部署(三)——网络配置OpenStack多节点部署(四)——KeyStoneOpenStack多节点部署(五)——NovaOpenStack多节点部署(六)——glance前面啰嗦了这么多,终于要正式进入OpenStack各组件安装部

2013-02-04 15:12:47 6706 2

原创 OpenStack多节点部署(三)——网络配置

OpenStack多节点部署(一)——服务器选型OpenStack多节点部署(二)——操作系统安装OpenStack多节点部署(三)——网络配置OpenStack多节点部署(四)——KeyStoneOpenStack多节点部署(五)——NovaOpenStack多节点部署(六)——glance在上一章中,和大家讨论了操作系统安装的方方面面,这章将

2013-02-04 11:23:10 20390 13

OpenStack Compute administration Manual

OpenStack 管理员手册 包括Nova,Keystone,Glance等组件的介绍,部署安装方法,配置文件参数详解等

2013-02-17

keystone安装脚本

OpenStack组件KeyStone的安装脚本,详见http://blog.csdn.net/networm3/article/details/8568784

2013-02-05

MPEG4开发白皮书

官方发布的MPEG白皮书,从算法到实现非常全面的阐述了MPEG4

2009-10-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除