nimbus (1.2.4) | 2018-01-25 20:02 |
nimbus-sample (1.2.4) | 2018-01-26 17:06 |
jp.ossc.nimbus.service.writer.DistributedCategoryServiceは、I/O性能を分散するために、複数の同種のCategoryに分流して出力するCategory実装サービスです。
このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。
下位サービスインタフェース | 用途 |
jp.ossc.nimbus.service.writer.Category | 出力する |
jp.ossc.nimbus.service.queue.Queue | 出力を非同期にする |
jp.ossc.nimbus.service.queue.DistributedQueueSelector | 出力を分散する |
以下に簡単なサービス定義を示します。
- <?xml version="1.0" encoding="Shift_JIS"?>
- <!DOCTYPE server PUBLIC
- "-//Nimbus//DTD Nimbus 1.0//JA"
- "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
- <server>
- <manager>
- <!-- 複数のCategoryに分流して出力するCategoryサービス -->
- <service name="Category"
- code="jp.ossc.nimbus.service.writer.SimpleCategoryService">
- <!-- Categoryサービスのサービス名を指定する。 -->
- <attribute name="CategoryServiceNames">
- #Category1
- #Category2
- </attribute>
- <depends>Category1</depends>
- <depends>Category2</depends>
- </service>
- <!-- 任意のオブジェクトをフォーマットして出力するCategoryサービス -->
- <service name="Category1"
- code="jp.ossc.nimbus.service.writer.SimpleCategoryService">
- <attribute name="WritableRecordFactoryServiceName">#WritableRecordFactory</attribute>
- <attribute name="MessageWriterServiceName">#Writer1</attribute>
- <depends>WritableRecordFactory</depends>
- <depends>Writer1</depends>
- </service>
- <!-- 任意のオブジェクトをフォーマットして出力するCategoryサービス -->
- <service name="Category2"
- code="jp.ossc.nimbus.service.writer.SimpleCategoryService">
- <attribute name="WritableRecordFactoryServiceName">#WritableRecordFactory</attribute>
- <attribute name="MessageWriterServiceName">#Writer2</attribute>
- <depends>WritableRecordFactory</depends>
- <depends>Writer2</depends>
- </service>
- <!-- 出力情報をフォーマットするWritableRecordFactoryサービス -->
- <service name="WritableRecordFactory"
- code="jp.ossc.nimbus.service.writer.PropertyWritableRecordFactoryService">
- <attribute name="FormatKeyMapping">
- DATE=Date
- MESSAGE=Message
- </attribute>
- <attribute name="Format">%DATE% : %MESSAGE%</attribute>
- <attribute name="ImplementClasses">
- DATE=jp.ossc.nimbus.service.writer.DateElement
- </attribute>
- </service>
- <!-- ファイルに出力するMessageWriterサービス -->
- <service name="Writer1"
- code="jp.ossc.nimbus.service.writer.OneWriteFileMessageWriterService">
- <attribute name="Append">true</attribute>
- <attribute name="File">log/sample1.log</attribute>
- </service>
- <!-- ファイルに出力するMessageWriterサービス -->
- <service name="Writer2"
- code="jp.ossc.nimbus.service.writer.OneWriteFileMessageWriterService">
- <attribute name="Append">true</attribute>
- <attribute name="File">log/sample2.log</attribute>
- </service>
- </manager>
- </server>