hybris內(nèi)容知識包括:Cockpit(ZK)/CockpitNG/CMS/Solr/Promotion/Mobile/OMS/Catalog design/PCM/OMS/Datahub/Accelerator。
WikiHybris 所有的資料都在hybris的wiki上,所以從high level上來說,比較好的一個途徑是看wiki,做trail。hybris的trail 其實應該做幾遍,知道每一步的流程具體是做什么的。
Project Implementation做hybris項目,會非常辛苦,我見過partner從早上8點多做到晚上12點。這對于某一個領域的能力會增加很快,不過對于hybris知識的廣度可能未必。
Source Code我們都知道hybris的source code是可以被反編譯的,可以大概看看其中的代碼結構。wiki上很多資料寫的其實并不全,并且由于資料多,很容易看過前面就忘了后面。
具體實現(xiàn)細節(jié)還需要看源代碼來了解,例如hybirs core和core plus 的底層細節(jié)(如類型系統(tǒng)type system的啟動和初始化),以及spring context scope等,這些細節(jié)都是需要看源代碼來了解的。還包括一些正在發(fā)展的component, 如datahub的實現(xiàn)細節(jié),在wiki上基本沒有,必須看源代碼才能知道其內(nèi)部邏輯。
注:反編譯的源代碼不一定保證能和源source code一一對應,我就見過exception stack trace 和反編譯出來的代碼對應不上,到時候可能會一頭霧水。閱讀源代碼的時候還可以用關系圖來理解各個package之間的聯(lián)系,從而將自己的知識網(wǎng)格化,這樣不同的知識點能夠互相連接起來。
Lucene是一個開放源代碼的全文檢索引擎工具包,即它不是一個完整的全文檢索引擎,而是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎,部分文本分析引擎(英文與德文兩種西方語言)。Lucene的目的是為軟件開發(fā)人員提供一個簡單易用的工具包,以方便的在目標系統(tǒng)中實現(xiàn)全文檢索的功能,或者是以此為基礎建立起完整的全文檢索引擎.
Solr是一個高性能,采用Java5開發(fā),基于Lucene的全文搜索服務器。同時對其進行了擴展,提供了比Lucene更為豐富的查詢語言,同時實現(xiàn)了可配置、可擴展并對查詢性能進行了優(yōu)化,并且提供了一個完善的功能管理界面,是一款非常優(yōu)秀的全文搜索引擎。它對外提供類似于Web-service的API接口。用戶可以通過 下面主要說說需要注意的地方。 Solr的安裝非常簡單,下載solr的zip包后解壓縮將dist目錄下的war文件改名為solr。
war直接復制到tomcat5。5的webapps目錄即可。
注意一定要設置solr的主位置。有三種方法。
我采用的是在tomcat里配置java:comp/env/solr/home的一個JNDI指向solr的主目錄(example目錄下),建立/tomcat55/conf/Catalina/localhost/solr。 xml文件。
觀察這個指定的solr主位置,里面存在兩個文件夾:conf和data。其中conf里存放了對solr而言最為重要的兩個配置文件schema。
xml和solrconfig。xml。
data則用于存放索引文件。 schema。
xml主要包括types、fields和其他的一些缺省設置。 solrconfig。
xml用來配置Solr的一些系統(tǒng)屬性,例如與索引和查詢處理有關的一些常見的配置選項,以及緩存、擴展等等。 上面的文檔對這兩個文件有比較詳細的說明,非常容易上手。
注意到schema。xml里有一個url 的配置,這里將url字段作為索引文檔的唯一標識符,非常重要。
三、加入中文分詞 對全文檢索而言,中文分詞非常的重要,這里采用了qieqie庖丁分詞(非常不錯:))。集成非常的容易,我下載的是2。
0。4-alpha2版本,其中它支持最多切分和按最大切分。
以下資料整理自網(wǎng)絡,以及查看solr幫助文檔。
主要分為兩部分,第一部分是對《db-data-config.xml》的配置內(nèi)容的講解(屬于高級內(nèi)容),第二部分是DataImportHandler(屬于基礎),第三部分是對db-data-config.xml的進階 第一部分是對《db-data-config.xml》 query是獲取全部數(shù)據(jù)的SQL deltaImportQuery是獲取增量數(shù)據(jù)時使用的SQL deltaQuery是獲取pk的SQL parentDeltaQuery是獲取父Entity的pk的SQL Full Import工作原理:執(zhí)行本Entity的Query,獲取所有數(shù)據(jù);針對每個行數(shù)據(jù)Row,獲取pk,組裝子Entity的Query;執(zhí)行子Entity的Query,獲取子Entity的數(shù)據(jù)。 Delta Import工作原理:查找子Entity,直到?jīng)]有為止;執(zhí)行Entity的deltaQuery,獲取變化數(shù)據(jù)的pk;合并子Entity parentDeltaQuery得到的pk;針對每一個pk Row,組裝父Entity的parentDeltaQuery;執(zhí)行parentDeltaQuery,獲取父Entity的pk;執(zhí)行deltaImportQuery,獲取自身的數(shù)據(jù);如果沒有deltaImportQuery,就組裝Query 限制:子Entity的query必須引用父Entity的pk 子Entity的parentDeltaQuery必須引用自己的pk 子Entity的parentDeltaQuery必須返回父Entity的pk deltaImportQuery引用的必須是自己的pk 第二部分是DataImportHandler 關于DataImportHandler的具體使用方法,詳見下文,如果你英文超級好,那看這個鏈接吧:.mysql.jdbc.Driver" url="jdbc:mysql://localhost/dbname" user="db_username" password="db_password"/> 數(shù)據(jù)源也可以配置在solrconfig.xml中 屬性type 指定了實現(xiàn)的類型。它是可選的。
默認的實現(xiàn)是JdbcDataSource。 屬性 name 是datasources的名字,當有多個datasources時,可以使用name屬性加以區(qū)分 其他的屬性都是隨意的,根據(jù)你使用的DataSource實現(xiàn)而定。
當然 你也可以實現(xiàn)自己的DataSource。 多數(shù)據(jù)源 一個配置文件可以配置多個數(shù)據(jù)源。
增加一個dataSource元素就可以增加一個數(shù)據(jù)源了。name屬性可以區(qū)分不同的數(shù)據(jù)源。
如果配置了多于一個的數(shù)據(jù)源,那么要注意將name配置成唯一的。 例如: 然后這樣使用 ..<entity name="one" dataSource="ds-1" 。
> .. .... 配置JdbcDataSource JdbcDataSource中的屬性有 driver(必需的):jdbc驅動名稱 url(必需的):jdbc鏈接 user:用戶名 password:密。
Solr是一個Java應用,可以部署在Web容器中。
如果使用的是 Sun Java 1。6, 在啟動命令行加上 -Dcom。
sun。management。
jmxremote 即可啟用 JMX 監(jiān)控。例如: java -Dcom。
sun。management。
jmxremote -jar start。jar配置時,需要JMX的用戶名,口令,和jmx_url。
如果是本地相同用戶監(jiān)控,只要制定進程號即可,這種方式不需要用戶名和口令,(只對Sun Java 1。6 有用),具體寫法可參考,另一個開源工具sigar的文檔。
監(jiān)控時首要關注的是Java虛擬機的配置,包括堆空間大小,當前堆的使用大小等。然后關注的應該是索引文檔的數(shù)量,最大值,以及各種查詢,緩存的命中率,使用率等,具體如下: JVM 指標 activeThreadCount:活躍線程數(shù)量 CurrentHeapSize:當前堆大小 TotalHeapSize: 堆的總大小 Searcher 監(jiān)控 Searcher Number of Docs Searcher Max Docs Query監(jiān)控 Query Result Cache Evictions Query Result Cache Hit Ratio Query Result Cache Hits Query Result Cache Inserts Query Result Cache Lookups Query Result Cache Sizes Document監(jiān)控 Document Cache Evictions Document Cache Hit Ratio Document Cache Hits Document Cache Inserts Document Cache Lookups Document Cache Sizes Filter 監(jiān)控 Filter Cache Evictions Filter Cache Hit Ratio Filter Cache Hits Filter Cache Inserts Filter Cache Lookups Filter Cache Sizes Update 監(jiān)控 Update Handler Adds Update Handler Commits Update Handler Autocommits Update Handler Optimizes Update Handler Rollbacks Update Handler ExpungeDeletes Update Handler DocsPending Update Handler DeletesById Update Handler DeletesByQuery Update Handler Errors 監(jiān)控Solr后,可使用Hyperic HQ豐富功能,對采集的數(shù)據(jù)進行查看,展示,報警。
作為一個真正的IT人員,我們不僅要懂得高級語言的編程使用,更要懂得電腦基礎的知識。這是我們成為杰出的IT人員的基石,只有踏上這些基礎知識我們才能走的更高。
首先我們要懂得電腦是如何工作的?電腦的工作原理就是開和關兩種狀態(tài),這是由其中的部件只有開和關這兩種狀態(tài)最穩(wěn)定決定的。
而我們用0和1去表示他們,電腦將0和1進行了充分的組合,也就是部件的串聯(lián),造就了豐富多變各種各樣的事物,也就是我們看電腦功能的強大。
可以通過0和1進行編碼輸入計算機,也可以通過解碼將其還原成原來的事物。這就是電腦工作最基本的原理。
0和1編碼也就是我們說的二進制Binary,二進制的出現(xiàn)正是伴隨著計算機的誕生而出現(xiàn)的,計算機的一切工作計算都是由二進制編碼完成的。就像十進制Decimal正是專門為我們?nèi)祟愂褂梅奖愣a(chǎn)生的。另外還有十六進制Hexadecimal,由于人類研究二進制比較復雜,才引出了十六進制去方便研究二進制。
而這些簡單的二進制是如何和世界轉變的呢?這里又引出了ASCII碼,BCD碼,國標碼等這些都是幫助計算機實現(xiàn)其功能的必需品。
這些東西都是電腦正常工作的必備條件,只有我們把這些東西,弄明白了我們才能在計算機方面走的更高更遠。
IT 人員必學的基礎知識(二)——進制相互轉化
二進制是計算機處理數(shù)據(jù)的工具。單位有位(bit),字節(jié)(Byte),千字兆(KB),兆字節(jié)(MB),千兆字節(jié)(GB)。
相互轉換關系:1B=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB。
二進制,八進制,十進制,十六進制之間的轉換圖:
其中二進制可以作為這幾種之間相互轉化的基礎,通過二進制很多可以變得很簡單:
IT人員必學基礎知識(三)——編碼理解
上篇說的二進制等之間的轉換,而要完成這些轉換,需要人為的定制一些規(guī)則,這就是第一篇提到的ASCII碼,BCD碼和國標碼。
1、ASCII碼,即美國標準信息交換碼(American Standard Code for Information Interchanger), 包括了32個通用字符,10個十進制數(shù)碼,52個英文大小寫字母和34個專用符號。這是沒有拓展的,最常用的。圖:
2、BCD(Binary-Coded Decimal)碼,又稱為“二-十進制編碼”專門解決用二進制數(shù)表示十進制數(shù)的問題。BCD制編碼的方法有很多,通常有8421碼,5421碼等等。
例:13可以寫作8421碼0001 0011
3、國標碼(GB2312),主要是編碼漢字的,有兩個7位二進制編碼表示,即每個編碼需要占兩個字節(jié),是針對中國一些信息編制的一些編碼。
IT人員必學基礎知識(四)——補充總結
這是計算機計算十進制運算時的大致過程,它將幾種進制和幾種編碼運用到了極致。這就是計算機運用簡單的事物早就不簡單的事情。計算機中任何一個過程都需要運用到這些知識,另外還有原碼,反碼,補碼等等。
在計算機內(nèi),定點數(shù)有3種表示法:原碼、反碼和補碼。原碼(true form)就是二進制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其余位表示數(shù)值的大小。
反碼表示法規(guī)定:正數(shù)的反碼與其原碼相同;負數(shù)的反碼是對其原碼逐位取反,但符號位除外。補碼(two's complement)表示法規(guī)定:正數(shù)的補碼與其原碼相同;負數(shù)的補碼是在其反碼的末位加1。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據(jù)《信息網(wǎng)絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:2.745秒