簡單說說 OSChina 的技術架構 頂 原 薦

OsChina.NET 這個域名是在去年 08年8月16日申請的,然後花了不足一個月的時候開發了第一個版本的OsChina,包含有項目展示、新聞、後臺管理、會員註冊等功能,以後的每次的改進就沒那麼集中,有空的話就完善完善一直到今天,當然了,還會一直完善下去。

OsChina.NET 是用 Java 開發的(一個朋友說,不是PHP就是ASP.NET,肯定不是Java,不幸猜錯了)。

目前整個工程的Java代碼行數是 1.5 萬包含註釋,其中真正的代碼行是 1 萬剛好,整個項目目錄不足十兆,包括所有的jar包。

Java 開發Web網站一般都有很多的框架可以選擇,但在OsChina中幾乎沒有用到什麼框架,除了:Lucene(搜索)、Velocity(頁面模板)、EhCache(緩存)。其中參考了 Struts 的 DispatchAction 的思路自己寫了一個只有一個 Java 文件的控制器(詳情),還有一個URL映射的(詳情)。之前的很多項目都用了 Hibernate 來訪問數據庫,但覺得配置太煩、jar包太大,於是決定在 OsChina 項目中嘗試不用 Hibernate,後來選擇了 DbUtils ,結果是:配置沒了、代碼比用 Hibernate 來得更少,程序更簡潔。例如:

/**
 * 列出某人的好友
 * @param user
 * @return
 */
public static List ListFriendsOfUser(long user) {
	String sql = "SELECT friend FROM osc_friends WHERE user=?";
	return QueryHelper.query_cache(long.class, CACHE, user, sql, user);
}

其他方面:不在項目中啓動線程來自動構建索引,而是提供一個程序讓通過操作系統的crontab來定期調用。

OSChina 服務器硬件情況請看:http://www.oschina.net/question/32709_8800

服務器託管在廣州電信較場西機房!

OSChina 的部分源碼請看:http://www.oschina.net/code/tag/oschina

等等,想到再繼續補充。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章