澳门美高梅手机网站Nginx学习笔记01Nginx简要介绍与目录表达

1.1. Nginx简要介绍

(1)Nginx是Web服务器。

Apache、IIS:经典的通用Web服务器。

Lighttpd、Nginx:轻量级Web服务器。

Tomcat、Jetty:面向Java的Web服务器。

 

(2)Nginx的优点。

Nginx最吸引人的优点在于以下多个方面:

(a)扶助高产出。

单机10万并发。

(b)低内部存款和储蓄器消耗。一千0个非活跃接连仅消耗2.5MB内部存款和储蓄器。

(c)热陈设。24×7不间断服务。

 

(3)Nginx的架构特点。

(a)多进度架构:二个Master进度+N个worker进程。

(b)OS内核帮衬:基于Linux内核协理的epoll通讯模型。

(c)中度可扩展:模块化设计,HTTP模块、HTTP过滤器模块等。官方模块和第二方模块。

 

 

常用的多少个O奥德赛M框架:

EF(ADO.NET Entity
Framework):微软依照ADO.NET开发的OOdysseyM框架。

Nhibernate:面向.NET环境的轻量级的OOdysseyM框架。

SqlMapper.cs:用于小项指标通用的C#数据库访问类。

AutoMapper:流行的对象映射框架,可收缩大气硬编码,很精致灵活,质量表现也可承受。

SubSonic:优良的开源的OTiggoM映射框架,同时提供符合自个儿供给的代码生成器。

FluentData:开源的基于Fluent
API的链式查询O昂CoraM轻量级框架。

Dapper:轻量级高品质基于EMIT生成的O汉兰达M框架。

EmitMapper:质量较高的O奥迪Q3M框架,运行时经过EMIT动态生成IL代码,并非选用反射机制。

1.3. 名词解释

 

CGI:Common Gateway Interface,通用网关接口。

法斯特CGI:法斯特 Common Gateway Interface,火速通用网关接口。CGI的立异版,借助于CGI进度管理器来优化CGI程序和Web服务器之间的竞相费用。

https://en.wikipedia.org/wiki/FastCGI

 

SCGI:Simple Common Gateway Interface,不难通用网关接口。类似于法斯特CGI,实现更简短。

https://en.wikipedia.org/wiki/Simple\_Common\_Gateway\_Interface

 

WSGI:Web Server Gateway Interface,Web服务器网关接口。

https://en.wikipedia.org/wiki/Web\_Server\_Gateway\_Interface

 

UWSGI:

UWSGI做为一个商谈,参考:

http://docs.jinkan.org/docs/flask/deploying/uwsgi.html

UWSGI作为三个应用服务器,参考:

http://uwsgi-docs.readthedocs.io/en/latest/

 

日志记录非凡处理:

Log4Net.dll:轻量级的免费开源.NET日志记录框架。

Enterprise Library Log Application
Black
:微软集团库日志记录。

Elmah:完结最风靡的ASP.NET应用万分日志记录框架。

NLog:是贰个粗略利落的日记记录类库,质量比Log4Net高,使用和保险难度低。

 

依靠注入IOC容器框架:

Unity:微软patterns&practicest团队支付的IOC重视注入框架,协助AOP横切关心点。

MEF(Managed Extensibility
Framework):是2个用来扩展.NET应用程序的框架,可开发插件系统。

Spring.NET:正视注入、面向方面编制程序(AOP)、数据访问抽象,、以及ASP.NET集成。

Autofac:最风靡的依赖注入和IOC框架,轻量且高质量,对品种代码差不多无其余侵入性。

PostSharp:完结静态AOP横切关切点,使用简易,效率强大,对目的拦截的章程无需任何改变。

Ninject:基于.NET轻量级开源的注重注入IOC框架

1.2. Nginx目录

Nginx常用目录结构如下图所示:

 

 

目录

描述

client_body_temp

文件上传临时目录

conf

配置文件目录,最重要的文件nginx.conf

fastcgi_temp

FastCGI临时目录

html

网站目录

logs

日志目录

proxy_temp

代理服务缓存的临时目录

sbin

程序目录,有nginx程序

scgi_temp

SCGI临时目录

uwsgi_temp

UWSGI临时目录

 

 

conf目录首要内容如下图所示:

 

 澳门美高梅手机网站 1

 

 

跨平台和运作时化解方案

MONO.NET:跨平台的.NET运维环境,让.NET跨平台运维成为大概。

DotGnu
Portable.NET
:类似于MONO.NET的跨平台运维时。

Phalanger:将PHP编译成.NET,可实现PHP与.NET互操作。

VMDotNet:中国邮电通讯飞信所利用过的.NET运维时。

Unity3D:微软着力扶助的机遇C#和JavaScript的跨平台游戏开发框架。

Cassini、IIS
Express和Cassinidev
:开源的ASP.NET执行环境。

Katana:微软基于OWIN规范落到实处的非IIS寄宿ASP.NET和MVC等。

IKVM.NET:基于.NET的JAVA虚拟机,让JAVA运行在.NET之上。

分词、全文字笔迹检验索和搜索引擎

Lucene.net:流行高品质的全文索引库,可用以为各项音信提供有力的寻找功效。

Lucene.Net.Analysis.PanGu:辅助Lucene.Net最新版的苍天普通话分词扩张库。

数传闻明组件整理

FluentValidation for
.NET
:基于LINQ表明式方法链Fluent接口验证组件。

Microsoft.Practices.EnterpriseLibrary.Validation.dll:微软公司库验证程序块。

CuttingEdge.Conditions:基于Fluent接口方法练接口的契约编制程序组件。

DotNetOpenAuth:让网站有着帮衬OpenID、OAuth、InfoCard等身份验证的能力。

移动网络和云总结

PushSharp:通过.NET向各样运动平台推送音信。

mono for
android
:用.NET语言开发安卓应用:

MonoTouch:用.NET语言开发IOS应用。

PhoneGap和AppCan:跨平台基于HTML5的移位支付平台。

Cordova:PhoneGap进献给Apache后的开源项目,是驱动PhoneGap的主干引擎。

从今学习.NET以来,优雅的编制程序风格,卓殊不难的可扩充性,充分强劲开发工具,很小的就学曲线,让本人对这么些平台发出了深远的兴味,在工作和学习中也积累了部分开源的零部件,就现阶段想到的先整理于此,假诺再想到,就三番五次补充那篇日记,一日千里,就能形成二个祥和的组件经验库。

分布式缓存框架:

Microsoft
Velocity
:微软本身分布式缓存服务框架。

Memcahed:一套分布式的高速缓存系统,近来被许多网站选取以升级网站的访问速度。

Redis:是三个高质量的KV数据库。 它的产出相当大程度补偿了Memcached在某个地方的阙如。

EnyimMemcached:访问Memcached最精良的.NET客户端,集成不错的分布式均衡算法。

关于NoSQL数据库:

Mongodb:分布式文件存款和储蓄数据库。

Membase:家族的3个新的重量级的分子。

桌面应用程序框架

DevExpress:一个海内外国资本深的桌面应用程序UI控件库。

Prism:微软开支的指向WPF和Silverlight的MVVM框架,通过功用模块化的考虑,来讲复杂的政工职能和UI耦合性进行分离。

WPFToolkit 和 Fluent Ribbon Control
Suite
:开发近乎于Office风格的Ribbon菜单。

事务和分布式事务支持

KtmIntegration:二个支撑NTFS文件系统的工作开源类。

NET Transactional File
Manager
:对文件系统操作(复制、移动和删除)出席工作援助。

反射和动态语言

Clay dynamic:开源的动态语言dynamic框架让您形如javascript的法门创造对象。

ExposedObject:在类的外表通过动态语言dynamic的艺术访问私有成员。

PrivateObject:微软单元测试框架中便捷在外部调用类内部私有成员的一个类。

格式和数据类型转换

Newtonsoft.Json:近来.NET支出中最盛行的JSON种类化库,为新版的WebApi库提供基础。

System.JSON.dll:微软本人开发的JSON体系化组件(须要单独下载)

DataContractJsonSerializer 和
DataContractXmlSerializer
:微软在WCF中央银行使的种类化器。

JavaScriptSerializer:微软暗中同意针对WEB开发者提供的JSON格式化器。

iTextSharp、PDFsharp 和
PDF.NET
:通过.NET处理和生成PDF文书档案的组件。

SharpZipLib.dll:免费开源的ZIP和GZIP文件解压缩组件。

Math.NET:强大的数学生运动算、微积分、解方程和科学生运动算。

DocX:不必要安装word软件,通过C#操作word文件。

SharpSerializer:开源XML和、二进制、JSON、压缩和优化框架。

图形和图像处理框架

Paint.NET:基于.NET小巧灵活有力的图形处理开源项目。

Imagemagick.NET:用C#对开源图像处理组件Imagemagick的包裹。

Skimpt:基于.NET开源的显示器截图软件。

ImageGlue.NET:商业的图像处理组件,扶助的格式列了一大堆。

Sprite and Image Optimization
Framework
:微软CSS天使,多图合成一张大图和CSS样式。

活动任务调度框架

Quartz.NET:开源的学业调度和自动职务框架。

澳门美高梅手机网站,Topshelf:另一种创制Windows服务的开源框架

开源图表总结量控制件:

Visifire:一套效果十三分好的WPF图表控件,扶助3D绘制、曲线、折线、扇形、环形和梯形。
SparrowToolkit:一套WPF图表控件集,扶助绘制动态曲线,可绘制示波器、CPU使用率和波形。
DynamicDataDisplay:微软开源的WPF动态曲线图,线图、气泡图和热力图。

 

能够扩张音讯队列项目,如:卡夫卡是一种分布式的,基于发布/订阅的新闻系统。重要设计指标如下:
以时间复杂度为O(1)的艺术提供新闻持久化能力,尽管对TB级以上数据也能确认保证常数时间复杂度的访问品质。
高吞吐率。尽管在卓殊廉价的商用机器上也能成就单机支持每秒100K条以上音信的传输。
协理卡夫卡Server间的新闻分区,及分布式消费,同时确定保障各样Partition内的音信顺序传输。
并且援助离线数据处理和实时数据处理。
Scale out:协助在线水平扩张。
RabbitMQ
RabbitMQ是选取Erlang编写的三个开源的音讯队列,本人援助广大的磋商:AMQP,XMPP,
SMTP,
STOMP,也正因如此,它充裕重量级,更契合于公司级的开发。同时落实了Broker构架,那意味着新闻在发送给客户端时先在中央队列排队。对路由,负载均衡也许数额持久化都有很好的支持。
Redis
Redis是二个依据Key-Value对的NoSQL数据库,开发敬服很活泼。即便它是三个Key-Value数据仓库储存款和储蓄系统,但它本人补助MQ功效,所以完全能够作为二个轻量级的队列服务来采用。对于RabbitMQ和Redis的入队和出队操作,各执行100万次,每10万次记录二回执行时间。测试数据分为128Bytes、512Bytes、1K和10K多少个不等尺寸的多寡。实验申明:入队时,当数码相比小时Redis的品质要高于RabbitMQ,而一旦数额大小抢先了10K,Redis则慢的无法忍受;出队时,无论数额大小,Redis都突显出十分好的天性,而RabbitMQ的出队品质则远低于Redis。
ZeroMQ
ZeroMQ号称最快的消息队列系统,尤其针对大吞吐量的必要情状。ZeroMQ能够落到实处RabbitMQ不擅长的高级/复杂的行列,可是开发职员必要协调组合三种技艺框架,技术上的复杂度是对那MQ能够使用成功的挑衅。ZeroMQ具有3个非同一般的非中间件的形式,你不要求设置和平运动作1个新闻服务器或中间件,因为你的应用程序将饰演这几个服务器剧中人物。你只须要简单的引用ZeroMQ程序库,能够使用NuGet安装,然后您就足以笑容可掬的在应用程序之间发送消息了。不过ZeroMQ仅提供非持久性的体系,也便是说假如宕机,数据将会丢掉。当中,Instagram的Storm
0.9.0原先的版本中私下认可使用ZeroMQ作为数据流的传输(Storm从0.9本子开头还要扶助ZeroMQ和Netty作为传输模块)。
ActiveMQ
ActiveMQ是Apache下的二个子项目。
类似于ZeroMQ,它能够以代办和点对点的技艺达成队列。同时类似于RabbitMQ,它少量代码就可以长足地贯彻高级应用场景。
Kafka/Jafka
卡夫卡是Apache下的三个子项目,是三个高质量跨语言分布式发表/订阅音讯队列系统,而Jafka是在卡夫卡之上孵化而来的,即卡夫卡的3个升级版。具有以下特点:快捷持久化,能够在O(1)的系统开发下展开音讯持久化;高吞吐,在一台一般的服务器上既能够达到10W/s的吞吐速率;完全的分布式系统,Broker、Producer、Consumer都原生自动支持分布式,自动完毕负载均衡;援助Hadoop数据交互加载,对于像Hadoop的均等的日记数据和离线分析系统,但又要求实时处理的界定,那是3个实惠的化解方案。卡夫卡通过Hadoop的竞相加载机制统一了在线和离线的音讯处理。Apache
卡夫卡相对于ActiveMQ是三个要命轻量级的消息系统,除了品质非凡好之外,依然三个干活卓绝的分布式系统。

 

互连网通讯和互联网协议

SuperSocket:基于.NET轻量级的可扩充的Socket开发框架。

SuperWebSocket:通过.NET实现TML5
WebSocket框架。

XProxy:援助插件的底子代理程序集,内置NAT、加解密、反向、直接和直接代理。

开源的.NET系统推荐:

OXITE:微软ASP.NET
MVC案例演示框架。

PetShop:微软ASP.NET宠物商店。

Orchard:国外3个MVC开源的博客系统。

SSCLI:微软在NET Framework
2.0时代的开源代码。

DasBlog:海外3个基于ASP.NET的博客系统。

BlogEngine.NET:国外一款免费开源的博客系统。

Dotnetnuke.NET:一套非凡卓绝的遵照ASP.NET的开源门户网站程序。

Discuz.NET:国内开源的论坛社区种类。

nopCommerce和Aspxcommerce:国外一套高品质的开源B2C网站系统。

JumboTCMS和DTCMS:国内四款开源的网站管理系列:

测试和品质评估方面

Faker.Net:方便生成多量测试数据的框架。

Nunit:3个轻量级的单元测试框架。

Moq:非常的火的Mock框架,扶助LINQ,灵活且高品质。

xUnit:比NUnit更好的单元测试框架,升级立异版的Nunit框架。

MiniProfiler和Glimpse:基于MVC的两款品质事件监察和控制框架。

WEB开发和安顿性

Jumony
Core
:基于.NET开发的HTML引擎。

Microsoft.mshtml.dll、Winista.HtmlParser.dll
和 HtmlAgilityPack.dll
:解析处理HTML文书档案的框架。

JavaScript.NET和ClearScript(微软出品):基于.NET开发的JavaScript引擎。

NCrawler:其HTML处理引擎htmlagilitypack的的开源网络爬虫软件。

AntiXSS:微软官方预防跨站XSS脚本凌犯攻击的开源类库,它经过白名单机制实行内容编码。

YUICompressor.NET、Microsoft Ajax
Minifier 和 Google Closure Compiler
:JavaScrip和CSS压缩器。

NancyFx:是1个没错的轻量级开源.NET
WEB框架。倘若想快捷做个大概的WEB应用。

AspNetPager:国内盛名的ASP.NET分页控件,支持多样分页格局。

NOPI.dll:导出Excel报表的插件(基于微软OpenXml完成)(nopi.css.dl通过css设置样式)

Enterprise
Library
:微软本着公司级应用开发的一级实践组件。

PowerCollections:海外三个牛人写的高等开源集合。

发表评论

电子邮件地址不会被公开。 必填项已用*标注