自動任務調(diào)度框架 Quartz.NET:開源的作業(yè)調(diào)度和自動任務框架,。 Quartz框架的核心是調(diào)度器。調(diào)度器負責管理Quartz應用運行時環(huán)境,。調(diào)度器不是靠自己做所有的工作,,而是依賴框架內(nèi)一些非常重要的部件。Quartz不僅僅是線程和線程管理,。為確??缮炜s性,Quartz采用了基于多線程的架構(gòu),。啟動時,,框架初始化一套worker線程,這套線程被調(diào)度器用來執(zhí)行預定的作業(yè),。這就是Quartz怎樣能并發(fā)運行多個作業(yè)的原理,。Quartz依賴一套松耦合的線程池管理部件來管理線程環(huán)境。本篇文章中,,我們會多次提到線程池管理,,但Quartz里面的每個對象是可配置的或者是可定制的。 Topshelf:另一種創(chuàng)建Windows服務的開源框架. 其優(yōu)勢在于不需要創(chuàng)建windows服務,,創(chuàng)建控制臺程序就可以,。便于調(diào)試。 分布式緩存框架: Microsoft Velocity:微軟自家分布式緩存服務框架,。 “Velocity”是適用與所有數(shù)據(jù)源的一個高速,、“scalable in-memory ”的緩存,通過使用該緩存,,可以減少不必要的數(shù)據(jù)源訪問請求,,極大的提高應用程序的性能,。通過使用分布試的緩存應用,可以滿足吞吐量不斷增長的應用程序請求,?!癡elocity”分布在高速緩存群集中,不需要大量人為干涉,,從而減少了負載均衡的復雜度,。 “Velocity”以服務形式運行在一個或多Windows服務上,這些服務即為緩存主服務,,運行主緩存服務的主機稱作緩存服務器,。你仍然可以在安裝過“Velocity”的主機上運行其它程序,如:Web服務,。但一個主機只能安裝一個“Velocity”實例,。 緩存服務主機與數(shù)據(jù)源主機最好是在同一個域下,緩存主機服運行在Network Service賬戶下,,緩存主服務上的各種操作用域下的高速緩存認證憑據(jù),。“Velocity”使用權限較低的網(wǎng)絡服務帳戶,,可以有效的減少被惡意攻擊造成的損害,。 Memcahed:一套分布式的高速緩存系統(tǒng),目前被許多網(wǎng)站使用以提升網(wǎng)站的訪問速度,。 這是一套開放源代碼軟件,,以BSD license授權協(xié)議發(fā)布。 用于動態(tài)Web應用以減輕數(shù)據(jù)庫負載,。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),,從而提高動態(tài)、數(shù)據(jù)庫驅(qū)動網(wǎng)站的速度,。 Redis:是一個高性能的Key-Value數(shù)據(jù)庫,。 它的出現(xiàn)很大程度補償了Memcached在某些方面的不足。 redis的出現(xiàn),,很大程度補償了memcached這類key/value存儲的不足,,在部 分場合可以對關系數(shù)據(jù)庫起到很好的補充作用。它提供了Java,,C/C++,,C#,PHP,,JavaScript,,Perl,Object-C,Python,,Ruby,,Erlang等客戶端,使用很方便,。 Memcached:訪問Memcached最優(yōu)秀的.NET客戶端,,集成不錯的分布式均衡算法。 Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),,用于動態(tài)Web應用以減輕數(shù)據(jù)庫負載,。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高動態(tài),、數(shù)據(jù)庫驅(qū)動網(wǎng)站的速度,。Memcached基于一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,,但是客戶端可以用任何語言來編寫,并通過memcached協(xié)議與守護進程通信,。 常用的幾個ORM框架: EF(ADO.NET Entity Framework):微軟基于ADO.NET開發(fā)的ORM框架,。 該框架曾經(jīng)為.NET Framework的一部分,但version 6之后從.NET Framework分離出來,。 Nhibernate:面向.NET環(huán)境的輕量級的ORM框架,。 NHibernate是一個面向. NET環(huán)境的對象/關系數(shù)據(jù)庫映射工具。 對象/關系數(shù)據(jù)庫映射(object/relational mapping,,ORM)這個術語表示一種技術,,用來把對象模型表示的對象映射到基于SQL的關系模型數(shù)據(jù)結(jié)構(gòu)中去。 ibatisnet: 是一個類似于 ORM 框架,。 其實只是一個SQLMapper,,它著重于 ORM 中M(Mapping),提供了較為靈活數(shù)據(jù)訪問和面向?qū)ο筇匦?。最?IBatis 是由 Java 開發(fā)的,,.Net 版本是從 Java 版本移植而來。 AutoMapper:流行的對象映射框架,,可減少大量硬編碼,,很小巧靈活,性能表現(xiàn)也可接受,。 你只需要從Nuget上下載AutoMapper的包到你的應用程序里,,然后添加對AutoMapper命名空間的引用,然后你就可以在你的項目里隨意使用它了,。 SubSonic:優(yōu)秀的開源的ORM映射框架,,同時提供符合自身需要的代碼生成器。 步驟一、創(chuàng)建使用的數(shù)據(jù)庫,、數(shù)據(jù)表與新建Web網(wǎng)站項目,。 步驟二、添加SubSonic框架與配置文件,。 步驟三,、配置SubSonic代碼生成器,生成相關類,。 FluentData:開源的基于Fluent API的鏈式查詢ORM輕量級框架,。 旨在比大型 ORM(full ORM)更加易用。FluentData 于(2012-02月)推出,,它使用 fluent API 并支持 SQL Server,、SQL Azure、Oracle 和 MYSQL,。 Dapper:輕量級高性能基于EMIT生成的ORM框架,。 輕量。只有一個文件(SqlMapper.cs),,編譯完成之后只有120k(好象是變胖了) 速度快,。Dapper的速度接近與IDataReader,取列表的數(shù)據(jù)超過了DataTable,。 支持多種數(shù)據(jù)庫,。Dapper可以在所有Ado.net Providers下工作,包括sqlite, sqlce, firebird, oracle, MySQL, PostgreSQL and SQL Server 可以映射一對一,,一對多,,多對多等多種關系。 性能高,。通過Emit反射IDataReader的序列隊列,,來快速的得到和產(chǎn)生對象,性能不錯,。 支持FrameWork2.0,,3.0,3.5,,4.0,,4.5 EmitMapper:性能較高的ORM框架,運行時通過EMIT動態(tài)生成IL代碼,,并非采用反射機制,。 |
|
來自: 昵稱11935121 > 《未命名》