Hi Ray,
During our world-wide user-conference in Paris last February, we presented
v6 and all its features (see
http://www.prismtech.com/opensplice/resources/demand-webcasts/opensplice-dds-user-conference-part-2)
, but summarizing we?ve introduced the standalone ?single-process?
deployment model, improved our DDSI implementation, introduced
OpenSplice-RMI (transparent remote-method invocations over DDS) and
introduced a distributed regression-test tool called the OpenSplice Tester
(see also
http://www.prismtech.com/opensplice/resources/youtube-videos-slideshare/opensplice-dds-tester-demo)
.
W.r.t. the upgrading of existing code, there where 3 (2 minor and 1 major)
API-changes: one about correcting the default writer reliability QoS to
RELIABLE (as is in the spec), one about deprecating the current ?
enable_invalid_samples? API for which there?s now an alternative that has 3
modes rather than 2, and most importantly, we decided to fix a
long-standing interoperability-challenge in that according to the
specification, the domainId is a so-called ?NATIVE_TYPE? meaning that each
DDS implementation may decide what it actually is and where in OpenSplice
it?s a string (URI of the domain-configuration) and in most other DDS
implementations it was an integer. We decided to adopt the integer so to
increase portability and we?re offering a DDS_DOMAIN_ID_DEFAULT *?special
value?* which follows the pattern where the OSPL_URI environment variable
is still used to find the domain configuration-file and where the actual
domainId to be used will be the one as specified in the XML configuration
file.
Please note that also our commercial edition has an OpenSource LGPLv3 core,
its just that it comes with commercial support as well as an optional set
of commercial add-ons w.r.t. tools (OpenSplice Tuner, OpenSplice Tester),
pluggable services (DBMSConnect, DDSI2E, secure networking), API?s (OpenSplice
RMI, OpenSplice Streams) and choice of deployment modes.
With respect to your question on ?*single-process scalability?*, that?s
indeed a trade-off as the advantage of using our shared-memory
deployment-mode is that intra-nodal traffic as well as related
resource-usage will be more efficient than when using multiple standalone
?single-processes? that need a transport (protocol) to communicate. Please
note that modern operating systems do a good job in short-cutting loop-back
network-traffic, so the difference isn?t dramatic, but still a factor of 2
to 3 when comparing latency to using shared-memory has to be taken into
account. Footprint is indeed the other metric where the efficiency of
OpenSplice?s shared-memory model (where regardless of the number of
readers/writers, there?s always maximally 1 physical copy of a sample
?in-memory?) can be a factor of consideration when comparing to the ?*
traditional?* (single-process) library-model where each application links
the middle as libraries and will necessarily require its own copy of
subscribed data.
For more details you can always contact me directly of course J
Regards,
Hans
* *
*Hans van 't Hag*
OpenSplice DDS Product Manager
PrismTech Netherlands
Email: hans.vanthag at prismtech.com
Tel: +31742472572
Fax: +31742472571
Gsm: +31624654078
PrismTech is a global leader in standards-based, performance-critical
middleware. Our products enable our OEM, Systems Integrator, and End User
customers to build and optimize high-performance systems primarily for
Mil/Aero, Communications, Industrial, and Financial Markets.
------------------------------
*From:* developer-bounces at opensplice.org [mailto:
developer-bounces at opensplice.org] *On Behalf Of *FRANCIS Raymond
*Sent:* maandag 15 oktober 2012 16:18
*To:* OpenSplice DDS Developer Mailing List
*Subject:* Re: [OSPL-Dev] Shared Memory Configuration Issues
Hans,
Thanks for that information. Currently I am using the Community Edition,
so I would need to go to the commercial version to benefit from this. This
is an option, but I was wondering the following:
1) Is there somewhere a list of the differences from 5.4.1 to 6.x? We
would be interested in knowing the impact of upgrading our existing code.
2) The 'single-process' deployment, if I understand the name correctly, the
question is what happens on one machine if I have multiple processes, do
they duplicate the database? Is there any performance issues I need to
consider with that?
Regards
Raymond Francis
*From:* developer-bounces at opensplice.org [mailto:
developer-bounces at opensplice.org] *On Behalf Of *Hans van't Hag
*Sent:* 12 October 2012 14:38
*To:* OpenSplice DDS Developer Mailing List
*Subject:* Re: [OSPL-Dev] Shared Memory Configuration Issues
Hey Ray,
Ever considered to use the ?single-process? deployment mode available with
V6 (that doesn?t use shared-memory) ?
Regards,
Hans
* *
*Hans van 't Hag*
OpenSplice DDS Product Manager
PrismTech Netherlands
Email: hans.vanthag at prismtech.com
Tel: +31742472572
Fax: +31742472571
Gsm: +31624654078
PrismTech is a global leader in standards-based, performance-critical
middleware. Our products enable our OEM, Systems Integrator, and End User
customers to build and optimize high-performance systems primarily for
Mil/Aero, Communications, Industrial, and Financial Markets.
------------------------------
*From:* developer-bounces at opensplice.org [mailto:
developer-bounces at opensplice.org] *On Behalf Of *Francis,Raymond
*Sent:* woensdag 3 oktober 2012 12:05
*To:* 'OpenSplice DDS Developer Mailing List'
*Subject:* [OSPL-Dev] Shared Memory Configuration Issues
Dear All,
We have been using OpenSplice in various projects, in particular embedding
"plugins" into 3rd party products. Up until now, DDS has worked great.
But some of our projects have started running the 3rd party product with
DDS on different Windows versions or using later versions of the 3rd party
product, and this has resulted in the failure to create the shared kernel.
In fact, almost from day 1 usage of DDS I have had to play with the Address
configuration item, and felt I had settled on one that reliably worked.
However, that magic number is now starting to fail. Guessing a new one is
very difficult, but we have managed to change that and the DB size to get
things working again. However, I would be interested in knowing how the
Address can be specified. From my experience, a higher number is not
necessarily going to guarantee making it work.
What is a little confusing to me is that Windows has its own shared memory
management, referenced by name rather than address. Why is a specific
address necessary, as I can see this continually being problematic for
future Windows and 3rd party product releases?
Regards
Raymond Francis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://dev.opensplice.org/pipermail/developer/attachments/20121015/8a56d0f8/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 3349 bytes
Desc: not available
URL: <
Loading Image...
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 3349 bytes
Desc: not available
URL: <
Loading Image...
>