DRH specification framework 2007-03-15 EDM - NIED Takeshi KAWAMOTO, Hiroaki NEGISHI, Mitsuaki SASAKI 1
DRH Basic Development before Sep. 2007 Server architectures Search architectures Multilanguage Architectures Appendix 2
Server Architectures 3
Server architecture LAMP: Basic architecture that can be easily constructed and free software. Database Server MySQL Application Language PHP Operation System Linux Web server Apache for the purpose of acceleration. Multilanguage Full-text search engine Search engine Hyper Estraier PHP Module Caching Caching Server memcached Other extra applications and more 4
Advantage Open source: free of charge Needed cost: hardware and running cost. There is a lot of material because its popular. LAMP: popular in web development. Adaptive composition by load state. Hyper Estraier Multilingualized application Memcached Supported PHP object cache 5
Server composition Router No HDD Linux (Net boot) Virtual Linux Server (Load balancer) Application Server 1 LAMP & extra Application Server 2 LAMP & extra 6
Search Architectures 7
. Search architecture Full Text Search by using Hyper Estraier Object of search Template sentences. Can search attachment files. (PDF, Excel, Word and PowerPoint) Multi language support by system function. Keyword Search Object of search Template keyword, Categories, Application examples and Usability evaluation. The retrieval result can be narrowed by the selection. Multi language support through member participation. and more? 8
Search page image 9
Multilanguage Architectures 10
Multilanguage operation character set is Unicode(UTF-8) More language supported. Interface and Contents: translated on the application side. First: COOKIE has language-code? If not: get browser's language code. If it has, output that data. If no language-data found from browser and COOKIE, set interface as English and Contents as original language. Actual translation is done by ethnic users. These translated data can be used by the other people, too. 11
Unicode supported characters list Basic Latin (Alphabets) Latin Greek Cyrillic Armenian Hebrew Arabic Syriac Thaana Devanagari Bengali Gurmukhi Gujarati Oriya Tamil Telugu Kannada Malayalam Sinhala Thai Lao Tibetan Myanmar Georgian Hangul Ethiopic Cherokee Ogham Runic Tagalog Hanunoo Buhid Tagbanwa Khmer Mongolian Limbu Tai Le Hiragana Katakana Ideographs And more now supported over 90,000 characters by Unicode. Unicode documents: http://www.unicode.org/ 12
Multilanguage Operation request process Input English Japanese Chinese Nepalese And more Page ID Language code Translate engine Contents data table Interface data table Translated data HTML Template Template engine Output English Japanese Chinese Nepalese And more Display 13
Appendix 14
Login/Logout Pattern Display portal Display forum Display database Display link Not login state. Sign in Authorization Adds it at the login state. Sign out Write forum Propose database 15
Future development Add API. multiple application link system. API REST Contents forwarding (Response XML or JSON) Search forwarding (Response XML or JSON) Atom Publishing Protocol Posting Contents 16
Load Balancing: possible further extension No HDD Linux (Net boot) Virtual Linux Server (Load balancer Application) Linux (Apache) Reverse proxy Linux (Apache) Reverse proxy Linux (Apache + PHP) Store the DRH application Linux (Apache + PHP) Store the DRH application more Linux (Apache + PHP) Store the DRH application No HDD Linux (Net boot) Virtual Linux Server (Load balancer Application) MySQL Slave DB (read-only) MySQL Slave DB (read-only) more Relation data MySQL Master DB (write-only) It s possible to expand a decentralized scale by adding each server. The access load can be reduced. 17
Thank you for listening. 18