Archived
This forum has been archived. Please start a new discussion on GitHub.
about IceStorm
"icebox --Ice.Config=config_service" this command is in my config file of IceStorm,
it cann't work well in the version of Ice-1.5.1,but can work well in Ice-1.3.0,
what's the reason?And how can I modify it?
another question is about IceStorm:
I think there are three parts in IceStorm ,one is publisher, one is subcriber,
and the last is the configure environment with files "config" and "config_service"
which contain the port client and server to connect,etc;I will call the configure environment "server"(maybe you called it topicManager,in my project it is a *.bat ,like a console . Did I discribe it clearly? do you understand?).
If there is one publisher ,one subscriber,one server, I succeed receiving the message from publisher in subscriber.
now the question is like this:
If there are 100 publishers(in 100 applications,and in on computer),such as P1,P2,P3,......P100,
and there are 100 subscriber (in 100 applications,and in another computer),such as S1,S2,....S100,
and there is one server, and they are using a same topic"topic", what can I do to make P1 receive message just only from S1,
and P2 receive message just from S2,and so on.
Thank you very much.
another question:
is there a way to get all topics in publisher or subscriber?
it cann't work well in the version of Ice-1.5.1,but can work well in Ice-1.3.0,
what's the reason?And how can I modify it?
another question is about IceStorm:
I think there are three parts in IceStorm ,one is publisher, one is subcriber,
and the last is the configure environment with files "config" and "config_service"
which contain the port client and server to connect,etc;I will call the configure environment "server"(maybe you called it topicManager,in my project it is a *.bat ,like a console . Did I discribe it clearly? do you understand?).
If there is one publisher ,one subscriber,one server, I succeed receiving the message from publisher in subscriber.
now the question is like this:
If there are 100 publishers(in 100 applications,and in on computer),such as P1,P2,P3,......P100,
and there are 100 subscriber (in 100 applications,and in another computer),such as S1,S2,....S100,
and there is one server, and they are using a same topic"topic", what can I do to make P1 receive message just only from S1,
and P2 receive message just from S2,and so on.
Thank you very much.
another question:
is there a way to get all topics in publisher or subscriber?
0
Comments
-
Re: about IceStormOriginally posted by freshman
"icebox --Ice.Config=config_service" this command is in my config file of IceStorm,
it cann't work well in the version of Ice-1.5.1,but can work well in Ice-1.3.0,
what's the reason?And how can I modify it?
Note that the configuration file probably contains a property like this:
IceBox.Service.IceStorm=IceStormService,20:create --Ice.Config=config
The "20" in this property indicates the Ice version. Check your configuration file to see if you need to change this property to reflect the version of Ice you are using (i.e., for Ice 1.5.1, it should be "15").now the question is like this:
If there are 100 publishers(in 100 applications,and in on computer),such as P1,P2,P3,......P100,
and there are 100 subscriber (in 100 applications,and in another computer),such as S1,S2,....S100,
and there is one server, and they are using a same topic"topic", what can I do to make P1 receive message just only from S1,
and P2 receive message just from S2,and so on.another question:
is there a way to get all topics in publisher or subscriber?
Take care,
- Mark0 -
Thank you mes
the version problem:
the command is :icebox --Ice.Config=config_service and the config_service file is :
#
# The IceBox server endpoint configuration
#
IceBox.ServiceManager.Endpoints=tcp -p 9998
#
# The IceStorm service
#
IceBox.Service.IceStorm=IceStormService,15:create --Ice.Config=config
IceBox.DBEnvName.IceStorm=db
#
# Warn about connection exceptions
#
Ice.Warn.Connections=1
#
# Network Tracing
#
# 0 = no network tracing
# 1 = trace connection establishment and closure
# 2 = like 1, but more detailed
# 3 = like 2, but also trace data transfer
#
Ice.Trace.Network=1
#
# Protocol Tracing
#
# 0 = no protocol tracing
# 1 = trace protocol messages
#
Ice.Trace.Protocol=1
the exception is :
warning: unknown property: IceBox.DBEnvName.IceStorm
[ icebox: Network: accepting tcp connections at 192.168.82.148:9998 ]
[ icebox-IceStorm: Network: accepting tcp connections at 192.168.82.148:10000 ]
[ icebox-IceStorm: Network: accepting tcp connections at 192.168.82.148:1154 ]
[ icebox-IceStorm: Berkeley DB: DbEnv "IceStorm": IceStorm: No such file or dire
ctory ]
[ icebox-IceStorm: Berkeley DB: DbEnv "IceStorm": IceStorm\log.0000000001: No su
ch file or directory ]
[ icebox-IceStorm: Berkeley DB: DbEnv "IceStorm": PANIC: No such file or directo
ry ]
[ icebox-IceStorm: Berkeley DB: DbEnv "IceStorm": PANIC: DB_RUNRECOVERY: Fatal e
rror, run database recovery ]
[ icebox-IceStorm: Berkeley DB: DbEnv "IceStorm": IceStorm: No such file or dire
ctory ]
icebox: error: ServiceManager: exception while starting service IceStorm:
SharedDbEnv.cpp:352: Freeze::DatabaseException:
DbEnv::open: DB_RUNRECOVERY: Fatal error, run database recovery
[ icebox: Network: stopping to accept tcp connections at 192.168.82.148:9998 ]
What's wrong with me?
another question:
how many topics can the server manage?(the max,could it manage 100 topics?)0 -
You need to use the following property in config_service:
Freeze.DbEnv.IceStorm.DbHome=db
The property IceBox.DBEnvName.IceStorm is no longer supported, as indicated by the warning message.
Note that the "db" directory must already exist.
For an example, see demo/IceStorm/clock.
There is no upper limit on the number of topics that a single IceStorm service can support. It really depends on the volume of messages being processed by the service, and that is something only you can predict. I suggest that you exercise the service with a realistic load and see how it performs. It may be necessary for you to use federated topics in order to distribute the load across several hosts.
Take care,
- Mark0 -
OK,I know ,thank you
OK,I know ,thank you0