Skip to content

Commit

Permalink
Create gh-pages branch via GitHub
Browse files Browse the repository at this point in the history
  • Loading branch information
xujiazhe committed Jan 8, 2014
1 parent f68dfc7 commit d95ce84
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 22 deletions.
89 changes: 68 additions & 21 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,38 +28,85 @@ <h2>daemon_code</h2>

<div class="container">
<section id="main_content">
<h3>
<a name="welcome-to-github-pages" class="anchor" href="#welcome-to-github-pages"><span class="octicon octicon-link"></span></a>Welcome to GitHub Pages.</h3>
<p><strong>Monitoring and Management System of FMCG online Invoicing Service</strong></p>

<p>test
This automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:</p>
<h1>
<a name="%E5%BF%AB%E9%94%80%E5%93%81%E5%9C%A8%E7%BA%BF%E8%BF%9B%E9%94%80%E5%AD%98%E6%9C%8D%E5%8A%A1%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F" class="anchor" href="#%E5%BF%AB%E9%94%80%E5%93%81%E5%9C%A8%E7%BA%BF%E8%BF%9B%E9%94%80%E5%AD%98%E6%9C%8D%E5%8A%A1%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F"><span class="octicon octicon-link"></span></a><strong>快销品在线进销存服务管理系统</strong>
</h1>

<pre><code>$ cd your_repo_root/repo_name
$ git fetch origin
$ git checkout gh-pages
</code></pre>
<p><strong>used technologies</strong>: Linux environment, nginx web reverse proxy, tornado web server, develop language: Python, Shell.
Invoicing project select the tornado as its Web server and nginx reverse proxy. One tornado process serves one user; programming language: python, shell</p>

<p><strong>使用技术</strong>: linux环境,nginx网页代理服务器,tornado web服务器,语言为python, shell。</p>

<hr><h2>
<a name="project-background" class="anchor" href="#project-background"><span class="octicon octicon-link"></span></a>Project Background:</h2>

<p>From the browser, mobile terminal, the FMCG Invoicing project provides professional online invoicing management services.</p>

<p>In invoicing project, One tornado process serves one company(user). Each service process would connect to one of multi-synchronized databases. During service processes' running, many exceptions may occur such as process crashes, DB status changing to (un)available, the tornado process get stuck, daemon crash itself. </p>

<p>And there also may come some daily routines, such as Add-Del-Modify a user's information, tornado application package update, update the daemon configuration file. </p>

<p>This daemon will monitor and handle all of these events in real-time at minimal performance cost, to ensure stability and robustness of invoicing service</p>

<p>在线进销存管理系统中,一个tornado进程服务与一个商户,每个服务进程只连接多同步db数据库中的一个。在服务运行中,很多异常可能发生比如db不可用了,进程卡死了,也有可能进行一些日常事务比如增删用户,程序包更新等等. 由此就需要一个就需要一个监控处理这些事件和变化的程序来保证在线服务的鲁棒性实时性.</p>

<h2>
<a name="modules-instruction" class="anchor" href="#modules-instruction"><span class="octicon octicon-link"></span></a>Modules Instruction:</h2>

<p>If you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.</p>
<ul>
<li>
<p><strong>Main module:</strong></p>

<h3>
<a name="designer-templates" class="anchor" href="#designer-templates"><span class="octicon octicon-link"></span></a>Designer Templates</h3>
<p>Each module will push some message to this module, main module will react properly on each kind of message. Of course it will also ensure its validation after a restart.</p>

<p>We've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.</p>
<p>主模块:负责对各种模块推送过来的变化消息做出应对,当然它也会保证自己的重启有效性。</p>
</li>
<li>
<p><strong>DB module:</strong></p>

<h3>
<a name="rather-drive-stick" class="anchor" href="#rather-drive-stick"><span class="octicon octicon-link"></span></a>Rather Drive Stick?</h3>
<p>Each Connection_watch_dog is responsible for watching and checking a certain db connection. the db_master will assign checking task with a deadline to them. after deadline db_master will look through who haven't report, and change a dict of dbs status. Outside module could visit, restart db_master through this proxy, and massage of db change could be push out through this proxy too.</p>

<p>If you prefer to not use the automatic generator, push a branch named <code>gh-pages</code> to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.</p>
<p>每个监控狗负责监控检查一个db连接,db主任来给他们分配检查任务,根据提交情况更改一个db状态表。外部模块通过db代理来访问,重启db主任,db主任通过代理向外推送db的变化。</p>
</li>
<li>
<p><strong>Path module:</strong></p>

<h3>
<a name="authors-and-contributors" class="anchor" href="#authors-and-contributors"><span class="octicon octicon-link"></span></a>Authors and Contributors</h3>
<p>user's personnel directory(under which lie that user's config and running service pid file and using port info) will be put under specified path, when some modification, addition and deletion of these personnel information occur under that path. message of adduser, deluser, moduser to the main module.</p>

<p>You can <a href="https://github.com/blog/821" class="user-mention">@mention</a> a GitHub username to generate a link to their profile. The resulting <code>&lt;a&gt;</code> element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (<a href="https://github.com/defunkt" class="user-mention">@defunkt</a>), PJ Hyett (<a href="https://github.com/pjhyett" class="user-mention">@pjhyett</a>), and Tom Preston-Werner (<a href="https://github.com/mojombo" class="user-mention">@mojombo</a>) founded GitHub.</p>
<p>path模块:在用户个人目录下放着用户的配置信息服务进程pid,和port端口,当在那个目录下增删改这些信息的时候,该模块向主模块提交变化消息。</p>
</li>
<li>
<p><strong>Dispatcher module:</strong></p>

<h3>
<a name="support-or-contact" class="anchor" href="#support-or-contact"><span class="octicon octicon-link"></span></a>Support or Contact</h3>
<p>It's responsible for checking those web processes' validation cyclically.</p>

<p>Having trouble with Pages? Check out the documentation at <a href="http://help.github.com/pages">http://help.github.com/pages</a> or contact <a href="mailto:support@github.com">support@github.com</a> and we’ll help you sort it out.</p>
<p>负责对这些web服务进行周期性检查,有三个调度状态队列.</p>
</li>
<li>
<p><strong>Test module:</strong></p>

<p>模拟服务中各种突发事件,然后观察该deamon应对情况。</p>

<p>Simulate most kinds of incidents and daily routine in service running, such as
process crashes, DB status changing to (un)available, the tornado process get stuck, daemon crash itself.</p>

<p>and Add-Del-Modify a user's information, tornado application package update, update the daemon configuration file.</p>

<p>then see the handling and recovery result of this daemon.</p>
</li>
</ul><h3>
<a name="existing-problems" class="anchor" href="#existing-problems"><span class="octicon octicon-link"></span></a>Existing problems:</h3>

<pre><code>pyinotify massage push need manually flush: Inotify is a series of API for receiving change massage of specified file and fold. python library of pyinotify is just a encapsulation of these API. when I use bat to change users' directory(it happen quickly), pyinotify's massage pushing sometime get a little stuck. but not miss any massage, for which I only need to manually flush that fold.

inotify是接受文件(目录)变化消息通知的linux API, pyinotify是用python封装的这写API。

测试显示,当用批处理更改文件的时候,pyinotify消息推送有时会卡顿,但不会漏报。

这个时候需要刷新一下文件目录消息还是会被推出来的。也就是在通过批处理改动用户信息的时候,如果没有生效,刷新一下那个目录。
</code></pre>
</section>
</div>

Expand Down
2 changes: 1 addition & 1 deletion params.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"name":"Daemon","tagline":"daemon_code","body":"### Welcome to GitHub Pages.\r\ntest\r\nThis automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:\r\n\r\n```\r\n$ cd your_repo_root/repo_name\r\n$ git fetch origin\r\n$ git checkout gh-pages\r\n```\r\n\r\nIf you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.\r\n\r\n### Designer Templates\r\nWe've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.\r\n\r\n### Rather Drive Stick?\r\nIf you prefer to not use the automatic generator, push a branch named `gh-pages` to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.\r\n\r\n### Authors and Contributors\r\nYou can @mention a GitHub username to generate a link to their profile. The resulting `<a>` element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt), PJ Hyett (@pjhyett), and Tom Preston-Werner (@mojombo) founded GitHub.\r\n\r\n### Support or Contact\r\nHaving trouble with Pages? Check out the documentation at http://help.github.com/pages or contact support@github.com and we’ll help you sort it out.\r\n","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}
{"name":"Daemon","tagline":"daemon_code","body":"**Monitoring and Management System of FMCG online Invoicing Service**\r\n**快销品在线进销存服务管理系统**\r\n====\r\n**used technologies**: Linux environment, nginx web reverse proxy, tornado web server, develop language: Python, Shell. \r\nInvoicing project select the tornado as its Web server and nginx reverse proxy. One tornado process serves one user; programming language: python, shell\r\n\r\n**使用技术**: linux环境,nginx网页代理服务器,tornado web服务器,语言为python, shell。\r\n****\r\n\r\n##Project Background:\r\nFrom the browser, mobile terminal, the FMCG Invoicing project provides professional online invoicing management services.\r\n\r\nIn invoicing project, One tornado process serves one company(user). Each service process would connect to one of multi-synchronized databases. During service processes' running, many exceptions may occur such as process crashes, DB status changing to (un)available, the tornado process get stuck, daemon crash itself. \r\n\r\nAnd there also may come some daily routines, such as Add-Del-Modify a user's information, tornado application package update, update the daemon configuration file. \r\n\r\nThis daemon will monitor and handle all of these events in real-time at minimal performance cost, to ensure stability and robustness of invoicing service\r\n\r\n在线进销存管理系统中,一个tornado进程服务与一个商户,每个服务进程只连接多同步db数据库中的一个。在服务运行中,很多异常可能发生比如db不可用了,进程卡死了,也有可能进行一些日常事务比如增删用户,程序包更新等等. 由此就需要一个就需要一个监控处理这些事件和变化的程序来保证在线服务的鲁棒性实时性.\r\n \r\n\r\n## Modules Instruction:\r\n\r\n\r\n- **Main module:**\r\n\r\n Each module will push some message to this module, main module will react properly on each kind of message. Of course it will also ensure its validation after a restart.\r\n\r\n 主模块:负责对各种模块推送过来的变化消息做出应对,当然它也会保证自己的重启有效性。\r\n\r\n- **DB module:**\r\n\r\n Each Connection_watch_dog is responsible for watching and checking a certain db connection. the db_master will assign checking task with a deadline to them. after deadline db_master will look through who haven't report, and change a dict of dbs status. Outside module could visit, restart db_master through this proxy, and massage of db change could be push out through this proxy too.\r\n\r\n 每个监控狗负责监控检查一个db连接,db主任来给他们分配检查任务,根据提交情况更改一个db状态表。外部模块通过db代理来访问,重启db主任,db主任通过代理向外推送db的变化。\r\n\r\n- **Path module:**\r\n\r\n user's personnel directory(under which lie that user's config and running service pid file and using port info) will be put under specified path, when some modification, addition and deletion of these personnel information occur under that path. message of adduser, deluser, moduser to the main module.\r\n\r\n path模块:在用户个人目录下放着用户的配置信息服务进程pid,和port端口,当在那个目录下增删改这些信息的时候,该模块向主模块提交变化消息。\r\n\r\n- **Dispatcher module:**\r\n\r\n It's responsible for checking those web processes' validation cyclically.\r\n\r\n 负责对这些web服务进行周期性检查,有三个调度状态队列.\r\n\r\n- **Test module:**\r\n\r\n 模拟服务中各种突发事件,然后观察该deamon应对情况。\r\n\r\n Simulate most kinds of incidents and daily routine in service running, such as\r\n process crashes, DB status changing to (un)available, the tornado process get stuck, daemon crash itself.\r\n\r\n and Add-Del-Modify a user's information, tornado application package update, update the daemon configuration file.\r\n\r\n then see the handling and recovery result of this daemon.\r\n\r\n\r\n###Existing problems:\r\n pyinotify massage push need manually flush: Inotify is a series of API for receiving change massage of specified file and fold. python library of pyinotify is just a encapsulation of these API. when I use bat to change users' directory(it happen quickly), pyinotify's massage pushing sometime get a little stuck. but not miss any massage, for which I only need to manually flush that fold. \r\n\r\n inotify是接受文件(目录)变化消息通知的linux API, pyinotify是用python封装的这写API。\r\n\r\n 测试显示,当用批处理更改文件的时候,pyinotify消息推送有时会卡顿,但不会漏报。 \r\n\r\n 这个时候需要刷新一下文件目录消息还是会被推出来的。也就是在通过批处理改动用户信息的时候,如果没有生效,刷新一下那个目录。","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}

0 comments on commit d95ce84

Please sign in to comment.