架构
lein_wang
打好基础,温故知新
展开
-
架构初级积累一
-------------------------------------------------------------------------------------软件架构师首要的关注点不是系统的功能软件架构师需要关注的是需要满足的品质比如:1.主机托管环境2. 主机操作系统3. 并发数4. 内网还是公网5. 对这些进行优先级排列因原创 2012-10-08 17:03:28 · 385 阅读 · 0 评论 -
memcached原子加法
有一个页面需要记录打开次数,存在memcache里,正常的做法是:$count = $memcache->get($key);$count++;$memcache->set($key,$count);但是如果有并发,就可能会有多个用户同时触发这个操作, 幸好memcached里有这样一个API:public int Memcached::increment ( string $ke原创 2015-08-30 22:42:44 · 710 阅读 · 0 评论 -
nginx+php-fpm 403 forbidden
403 forbidden 一般都是文件夹没有访问权限导致的。假设nginx 配置root目录: /var/www/html/project,找到fpm配置文件:/etc/php-fpm.d/www.confuser = www-datagroup = www-data对于www-data来说,/ , /var , /var/www, /var/www/html, /var/www/h原创 2015-10-21 22:53:54 · 6389 阅读 · 0 评论 -
对于REST中无状态(stateless)的一点认识
目前为止看到最好的一篇关于RESTFUL的文章转自http://hi.baidu.com/tdormcswpebfmud/item/962d3afc4ac637c30dd1c8b2对于REST中无状态(stateless)的一点认识今天早上在Yahoo的邮件列表里看到一篇颇有意思的讨论,标题为RESTful vs. unRESTful: Session ID转载 2016-09-21 18:04:02 · 2187 阅读 · 0 评论 -
如何实现RESTful Web API的身份验证
点击打开链接http://www.360doc.com/content/14/0116/16/834950_345740386.shtml最近想拿一个小项目来试水RESTful Web API,项目只有几个调用,比较简单,但同样需要身份验证,如果是传统的网站的话,那不用说,肯定是用户名+密码在登录页获得登录Token,并把登录Token记在Cookie和转载 2016-09-22 14:14:56 · 4142 阅读 · 0 评论 -
到底什么时候该使用MQ
转自:到底什么时候该使用MQ?_架构师之路_传送门 http://chuansong.me/n/1744710846312 到底什么时候该使用MQ?_架构师之路_传送门 http://chuansong.me/n/1744710846312到底什么时候该使用MQ?原创2017-04-0558沈剑架构师之路一、缘起一切脱离业务的架构设计与新技术转载 2017-05-03 09:16:26 · 373 阅读 · 0 评论 -
《深入浅出搜索架构(中篇)》
转自:点击打开链接http://zhuanlan.51cto.com/art/201702/532287.htm二、检索需求的满足与架构演进任何互联网需求,或多或少有检索需求,还是以58同城的帖子业务场景为例,帖子的标题,帖子的内容有很强的用户检索需求,在业务、流量、并发量逐步递增的各个阶段,应该如何实现检索需求呢?1. 原始阶段-LIKE数据在数据库中转载 2017-05-03 11:20:19 · 709 阅读 · 0 评论 -
《深入浅出搜索架构(上篇)》
转自:点击打开链接http://zhuanlan.51cto.com/art/201702/531315.htm四、搜索原理与核心数据结构什么是正排索引?什么是倒排索引?搜索的过程是什么样的?会用到哪些算法与数据结构?前面的内容太宏观,为了照顾大部分没有做过搜索引擎的同学,数据结构与算法部分从正排索引、倒排索引一点点开始。提问:什么是正排转载 2017-05-03 11:05:25 · 378 阅读 · 0 评论 -
《深入浅出搜索架构(下篇)》
转自: 点击打开链接http://zhuanlan.51cto.com/art/201703/533480.htm二、实时搜索引擎架构大数据量、高并发量情况下的搜索引擎为了保证实时性,架构设计上的两个要点:(1)索引分级(2)dump&merge索引分级《深入浅出搜索架构(上篇)》介绍了搜索引擎的底层原理,在数据量非常大的情况下,为了保证转载 2017-05-03 11:23:55 · 656 阅读 · 0 评论 -
大型网站技术架构
转自:点击打开链接http://www.thinkphp.cn/code/2510.html大型网站技术架构,分布式集群示例!网站都是从小网站一步一步发展为大型网站的,而这之中的挑战主要来自于庞大的用户、安全环境恶劣、高并发的访问和海量的数据,任何简单的业务处理,一旦需要处理数以 P 计的数据和面对数以亿计的用户时,问题就会变的很棘手下面我们就来说说这个演变过程:初始阶段转载 2017-08-03 15:35:15 · 470 阅读 · 0 评论 -
WEB应用中间层的分层架构设计总结
转自:点击打开链接http://blog.sina.com.cn/s/blog_4c925dca0101jb4q.html阿堂管理Pos项目团队一年半多时间,由于公司业务的调整,近期又调回到移动项目团队管理了。在Pos团队时一直比较忙,这段时间在忙于带队开发基于微信公众平台的公司移动业务应用,业余时间又在研究IOS技术,一直没有时间去写点什么了。 正寻思写点什么呢?刚转载 2017-07-28 15:51:19 · 10122 阅读 · 0 评论 -
nginx单点故障怎么破?
转自:点击打开链接http://www.cnblogs.com/codeon/p/7344287.html一、问题域nginx、lvs、keepalived、f5、DNS轮询,每每提到这些技术,往往讨论的是接入层的这样几个问题:1)可用性:任何一台机器挂了,服务受不受影响2)扩展性:能否通过增加机器,扩充系统的性能3)反向代理+负载均衡:请求是否转载 2017-10-27 22:24:27 · 23609 阅读 · 3 评论 -
分布式与集群的区别是什么?
转自:https://www.zhihu.com/question/20004877小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关系是集群。为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分布式,一个配菜师也忙不过来了,又请了个配菜师,两个配菜师关系是集群作者:张鹏飞链转载 2018-01-18 16:58:59 · 241 阅读 · 0 评论 -
设计模式摘录
源自:https://www.zhihu.com/question/31979217在一个新的语言环境下研究设计模式的方法有两种。第一种是,把《设计模式》一书的头两章看作全书精髓,把23个模式实例看成举例说明。在新环境中试图使用头两章的思路去发现和整理合适的设计模式。第二种是,把《设计模式》头两章看成泛泛而谈的序言,把23个模式实例看成全书精髓。在新的语言环境中试图重新实现这23个模式并寻找它们在...转载 2018-02-27 14:08:12 · 204 阅读 · 0 评论 -
Nginx反向代理,负载均衡,redis session共享,keepalived高可用
转自:http://www.cnblogs.com/mrlinfeng/p/6146866.html转载 2018-10-26 11:19:27 · 120 阅读 · 0 评论 -
Thrift 应用场景(收集版)
http://www.ibm.com/developerworks/cn/java/j-lo-apachethrift/index.html转载 2014-10-15 15:00:44 · 4166 阅读 · 0 评论 -
.NET MVC 依赖注入 来龙去脉
找了很久,找到一篇好文章,转载 2014-04-28 22:19:55 · 2976 阅读 · 0 评论 -
记录创建企业Wiki的几个开源项目
很多著名的企业Wiki都是开源产品,如Foswiki(基于Perl),TWiki(基于Perl)等,另外有Mindtouch(基于PHP, C#),Confluence(基于Java)等。维基道的Wiki平台即基于Foswiki建立。有关更多的企业Wiki产品,可以参考wikimatrix.org。点击打开链接http://www.wikimatrix.org/show/T原创 2013-12-05 11:03:00 · 4697 阅读 · 1 评论 -
分层的一点思考
#!/usr/bin/env pythonimport MySQLdbprint "Content-Type: text/html\n"print "Books"print ""print "Books"print ""connection = MySQLdb.connect(user='me', passwd='letmein', db='my_db')cursor = c原创 2012-11-14 23:28:49 · 459 阅读 · 0 评论 -
抽象工厂与工厂方法的区别
工厂方法模式:一个抽象产品类,可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类只能创建一个具体产品类的实例。抽象工厂模式:多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类可以创建多个具体产品类的实例。 区别:工厂方法模式只有一个抽象产品类,而抽原创 2012-12-13 23:09:55 · 616 阅读 · 0 评论 -
创建型模式
ABSTRACT FACTORY 抽象工厂FACTORY METHOD 工厂方法BUILDER 生成器PROTOTYPE 原型SINGLETON 单例原创 2012-12-14 15:45:51 · 442 阅读 · 0 评论 -
如何用CruiseControl.Net来进行持续化集成(1)
The following services/roles are needed for a Continuous Integration System:developer PC (duh)source control serverbuild serverbuild server visualizerissue/bug trackerBuild Ser原创 2012-12-28 14:30:01 · 594 阅读 · 0 评论 -
如何用CruiseControl.Net来进行持续化集成(2)
Step 1 Setting up Source ControlMost systems I've seen have a setup as below :ProjectName \__Trunk | \Lib | \Src \__Branches \__1_0_0_3450 | \Lib | \Src原创 2013-01-03 18:14:24 · 414 阅读 · 0 评论 -
如何用CruiseControl.Net来进行持续化集成(3)
http://www.cruisecontrolnet.org/projects/ccnet/wiki/Configuration_Preprocessor#Preparing-to-Use-the-PreprocessorPreprocessor ElementsThe configuration preprocessor has several elements t原创 2013-01-03 18:35:04 · 461 阅读 · 0 评论 -
HTTP协议积累
class CouchSimple { function CouchSimple($options) { foreach($options AS $key => $value) { $this->$key = $value; } } function send($method, $url, $post_data = N原创 2013-02-19 16:46:24 · 419 阅读 · 0 评论 -
fastcgi
http://andylin02.iteye.com/blog/508963转载 2013-02-28 17:35:39 · 371 阅读 · 0 评论 -
IOC
1994 年,由Erich Gamma,Richard Helm,Ralph Johnson和 John Vlissides(即所谓的“四人帮’,GoF:Gang of Four)合作的以《设计模式:可复用的面向对象软件的基本原理》为题目的书藉出版了。这本书解释了模式的用处,同时也使得设计模式得到广泛普及。在书中,他们四人记录了他们长期工作中发现的经典 23 个设计模式。IoC 模原创 2013-03-13 15:52:32 · 661 阅读 · 0 评论 -
Apache .htaccess
RewriteEngine on RewriteRule ^$ webroot/ [L] RewriteRule (.*) webroot/$1 [L] SetHandler php5-script SetHandler php5-script Apache核心(Core)特性 指令原创 2013-03-13 16:20:53 · 2088 阅读 · 1 评论 -
公钥 私钥 CA
点击打开链接http://www.williamlong.info/archives/837.html点击打开链接http://www.williamlong.info/archives/823.html点击打开链接http://blog.csdn.net/yjflinchong/article/details/6621835非常好的讲解公钥私钥CA之间关系的文章点击打转载 2013-03-01 14:00:43 · 2754 阅读 · 1 评论 -
依赖倒置原则(DIP)与依赖反转 区别与联系
依赖倒置 是让高层不依赖底层的变化,转而去依赖底层的抽象。依赖注入 是让两个不同的组件之间不直接发生耦合,交给第三方配置文件去保存这种耦合关系,由框架来管理。http://www.cnblogs.com/DotNetFresh/archive/2005/06/27/181878.html点击打开链接http://www.cnblogs.com/hmiinyu/arc转载 2013-04-18 20:59:16 · 786 阅读 · 0 评论 -
自己动手创建简单的MVC框架
// create a virtual host>mkdir -p /var/www/layne.com/document_root>cd /etc/apache2/sites-avaliable>pico -w layne.com 或者 随便建一个文件,用gedit打开,save as layne.com DocumentRoot /var/www/layne.c原创 2013-03-13 23:14:23 · 718 阅读 · 0 评论 -
记录几个开源云计算平台
http://www.ohloh.net/p/abicloudhttp://www.ohloh.net/p/CloudStackhttp://www.ohloh.net/p/kaoshttp://www.ohloh.net/p/3440原创 2013-12-05 11:44:16 · 1165 阅读 · 0 评论 -
阿里云CDN配置步骤
记录一下备忘:加速域名和源站域名源站域名就是你的网站原本对外访问静态资源的域名,比如网站主域名www.website.com,静态文件域名static.website.com,图片地址是static.website.com/a.png加速域名就是你想用CDN来代替你原来静态文件域名的新域名,比如随便起一个 static-cdn.website.com1填 static-cdn.web...原创 2019-03-16 21:27:00 · 9807 阅读 · 1 评论