tag:blogger.com,1999:blog-220795482008-05-08T05:38:05.718+04:00thought.logakira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comBlogger26125tag:blogger.com,1999:blog-22079548.post-68952324426939644252007-03-13T00:02:00.000+03:002007-03-13T13:33:45.350+03:00<div style="text-align: center;"><span style="font-weight: bold;"><span style="font-size:180%;"><span style="color: rgb(255, 0, 0);">C++</span></span> vs <span style="font-size:180%;"><span style="color: rgb(51, 51, 255);">Java</span></span> vs <span style="font-size:180%;"><span style="color: rgb(0, 153, 0);">.NET </span></span></span><br /><span style="font-weight: bold;"><span style="font-size:180%;"><span style="color: rgb(0, 153, 0);"><span style="font-size:100%;"><span style="color: rgb(0, 0, 0);">on <span style="color: rgb(51, 51, 255);font-size:130%;" >Solaris</span> & <span style="font-size:130%;"><span style="color: rgb(102, 102, 204);">Windows<br /></span></span></span></span></span></span></span><div style="text-align: left;"><span style="font-weight: bold;"><span style="font-size:100%;"><br />It's article shows performance test results for following environments:<br /></span></span><ul><li>C++ (Visual Studio 2005/VC 8.0)/ Windows 2003/ Intel P4 2GHz 1Gb RAM</li><li>C++ (gcc 3.3.4 +STLport 4.5.3) / Sun Solaris 10 / Sun Fire v210 (2x1.34 GHz UltraSPARC) 4Gb RAM</li><li>C++ (Visual Studio 2005/VC 8.0)/ Windows XP/ Intel Core 2 Duo E6300 (1,8 Ghz) 1Gb RAM </li><li>Java (JDK 1.6) / Windows 2003 / Intel P4 2GHz 1Gb RAM</li><li>Java (JDK 1.6) / Sun Solaris 10 / Sun Fire v210 (2x1.34 GHz UltraSPARC) 4Gb RAM</li><li>Java (JDK 1.6) / Windows XP/ Intel Core 2 Duo E6300 (1,8 Ghz) 1Gb RAM<br /></li><li>C# (.NET 2.0) / Windows XP/ Intel Core 2 Duo E6300 (1,8 Ghz) 1Gb RAM</li></ul><span style="font-weight: bold;">Overview</span><br /><br />All tests specified values as <span style="font-style: italic;">time execution in seconds (with milliseconds)</span> and smaller value is the better result.<br />It's a primitive single-thread test. The multi-thread test is work for me in future.<br />Java always ran in server VM mode (-server param).<br /><br /><span style="font-weight: bold;">Test source code :</span><br /><ul><li><a href="http://docs.google.com/Doc?id=dgf4f36d_9s86x7r">C++ source</a></li><li><a href="http://docs.google.com/Doc?id=dgf4f36d_10gsk5fb">Java source</a></li><li><a href="http://docs.google.com/Doc?id=dgf4f36d_119dk2gh">.NET source</a></li><li><a href="http://docs.google.com/Doc?id=dgf4f36d_12hn9pbh">EchoServer source (C++ only)</a> for network performance test<br /></li></ul>You can get test result table <a href="http://spreadsheets.google.com/pub?key=p1418WBHaq5bwzfiymzf7Eg">from here</a><br /></div><div style="text-align: left;"><br /><span style="font-weight: bold;">Result diagrams:<br /><br /></span><span><span style="font-size:85%;">1. Objects creation test</span></span><span style="font-weight: bold;"><br /></span><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_SGffpHUDp6A/RfXKmsCH6VI/AAAAAAAAAPA/pGyCvUJuA-U/s1600-h/1.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_SGffpHUDp6A/RfXKmsCH6VI/AAAAAAAAAPA/pGyCvUJuA-U/s320/1.JPG" alt="" id="BLOGGER_PHOTO_ID_5041158123915045202" border="0" /></a><span><span style="font-size:85%;">2. Call virtual method with string (for C++ uses STL string) arguments and result</span></span><br /><br /><span style="font-size:78%;"><span style="font-style: italic;">(Diagram will be publish later and not available now - please read table results)</span></span><br /><br /><span style="font-weight: bold;"><span style="font-size:180%;"><span style="color: rgb(0, 153, 0);"><span style="font-size:100%;"><span style="color: rgb(0, 0, 0);"><span style="font-size:130%;"><span style="color: rgb(102, 102, 204);"></span></span></span></span></span></span></span></div><div style="text-align: left;"><span><span style="font-size:85%;">3. Call a non-virtual usual method with string (</span></span><span><span style="font-size:85%;">for C++ uses STL string</span></span><span><span style="font-size:85%;">) arguments and result<br /><br /></span></span></div><div style="text-align: left;"><span style="font-size:78%;"><span style="font-style: italic;">(Diagram will be publish later and not available now - please read table results)<br /><br /></span></span><span><span style="font-size:85%;">4. Network performance test for sockets (TCP/IP). Blocking mode with packet size 256 & 10000 iteration<br /></span></span></div><br /><div style="text-align: left;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_SGffpHUDp6A/RfXLPMCH6bI/AAAAAAAAAPw/oxcnrEOIgy4/s1600-h/7.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_SGffpHUDp6A/RfXLPMCH6bI/AAAAAAAAAPw/oxcnrEOIgy4/s320/7.JPG" alt="" id="BLOGGER_PHOTO_ID_5041158819699747250" border="0" /></a><br /><span><span style="font-size:85%;">5. Network performance test for sockets (TCP/IP). Blocking mode with packet size 256 & 100000 iteration</span></span></div><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_SGffpHUDp6A/RfXLLcCH6aI/AAAAAAAAAPo/GcBgAkL-8ww/s1600-h/6.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_SGffpHUDp6A/RfXLLcCH6aI/AAAAAAAAAPo/GcBgAkL-8ww/s320/6.JPG" alt="" id="BLOGGER_PHOTO_ID_5041158755275237794" border="0" /></a><br /><div style="text-align: left;"><span><span style="font-size:85%;">6. </span></span><span><span style="font-size:85%;">Call a virtual method with long arguments and result</span></span><br /></div><br /><div style="text-align: left;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_SGffpHUDp6A/RfXLIMCH6ZI/AAAAAAAAAPg/uptMOGnTSkE/s1600-h/5.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_SGffpHUDp6A/RfXLIMCH6ZI/AAAAAAAAAPg/uptMOGnTSkE/s320/5.JPG" alt="" id="BLOGGER_PHOTO_ID_5041158699440662930" border="0" /></a><br /><span><span style="font-size:85%;">7. </span></span><span><span style="font-size:85%;">Call a non-virtual method with long arguments and result<br /><br /></span></span></div><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_SGffpHUDp6A/RfXLEMCH6YI/AAAAAAAAAPY/reL14q6Q8X8/s1600-h/4.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_SGffpHUDp6A/RfXLEMCH6YI/AAAAAAAAAPY/reL14q6Q8X8/s320/4.JPG" alt="" id="BLOGGER_PHOTO_ID_5041158630721186178" border="0" /></a></div>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-39319135311608087472007-03-07T12:02:00.000+03:002007-03-07T12:08:53.697+03:00<span style="font-weight: bold;">MyPhotoAlbum. Act II<br /><br /></span>My account is removed by admin of MyPhotoAlbum today with the following message:<br />"<br />We have noticed that you have not uploaded any photos to your MyPhotoAlbum account, even though the account was activated over 127 days ago.<br /><br />In order to provide the best possible service to our members, we automatically cancel inactive accounts after 127 days. We have therefore canceled your account for username 'abdurakhmanov'."<br /><br /><br />But I have in myphotoalbum 3 albums & more photos ;-)<br />I think my account is removed because of I set one message on album title about myphotoalbum service and recent "surprise".akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-45309507400494373672007-03-06T17:18:00.000+03:002007-03-06T17:45:09.817+03:00<span style="font-weight: bold;">Arghh... A MyPhotoAlbum service suprise! :(</span><br />"<span class="ngs_txt">Unless you or one of your site visitors makes a purchase from your MyPhotoAlbum site within the next 363 days, your account may be deleted."<br /><br /></span><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_SGffpHUDp6A/Re15xiaZbfI/AAAAAAAAAO0/RpjUswtNcPk/s1600-h/MyPhotoAlbumSurprise2.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_SGffpHUDp6A/Re15xiaZbfI/AAAAAAAAAO0/RpjUswtNcPk/s320/MyPhotoAlbumSurprise2.jpg" alt="" id="BLOGGER_PHOTO_ID_5038817450055527922" border="0" /></a><br /><span class="ngs_txt">Don't use MyPhotoAlbum if you want this for free!<br />I'm already get the new service and my photo album was at </span><span class="ngs_txt"><a href="http://picasaweb.google.com/abdulla.abdurakhmanov">http://picasaweb.google.com/abdulla.abdurakhmanov</a><br />and I'll remove the exists account at myphotoalbum.com<br /><br /><br /></span><span class="ngs_txt"><br /><br /><br /></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-3854834894877700482007-01-23T18:23:00.000+03:002007-01-23T18:24:06.349+03:00<span style="font-weight: bold;">Intel & Sun partnership...</span><br /><br />Heh...<br />"<span style="font-style: italic;">[AMD] understands how business works, and that Intel's endorsing Solaris is generally good for Sun.</span>"<br />-- John Fowler Sun Microsystems<br /><a href="http://www.zdnetasia.com/news/software/0,39044164,61983979,00.htm">http://www.zdnetasia.com/news/software/0,39044164,61983979,00.htm</a>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-21950865760114418422007-01-18T11:41:00.000+03:002007-01-18T19:10:49.852+03:00<span style="font-weight: bold;font-size:130%;" >Remoting frameworks performance compa</span><span style="font-weight: bold;font-size:130%;" >rison</span><span style="font-size:130%;">...</span><br />I take a simple test for Web-services (JAX-WS, ASP.NET) and BinaryNotesMQ performance and get the following results:<br /><br /><span style="font-style: italic;">Environment:</span> Intel Core 2 Duo 6300 / 1Gb RAM.<br /><span style="font-style: italic;">OS: </span>Windows XP SP2<br /><span style="font-style: italic;">Transaction description:</span> There is a process that calling service with 3 input params: 1 integer, 2 string parameters (contain small length values - approximately 5 chars) and receiving return result as simple string (~approximately 10 chars).<br /><br /><span style="font-weight: bold;">BNMQ</span>: 80 bytes / 20000 tps (Java 1.6/BinaryNotes v1.4, PTPSession call async style)<br /><span style="font-weight: bold;">ASP.NET</span>: 643 bytes/ 400 tps (ASP.NET 2.0, async web-service call)<br /><span style="font-weight: bold;">JAX-WS</span>: 672 bytes/ 250 tps (Java 1.5, sync web-service call)<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_SGffpHUDp6A/Ra-ZlerdWYI/AAAAAAAAAAk/WMF7O-yYrws/s1600-h/packet_len_perf.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_SGffpHUDp6A/Ra-ZlerdWYI/AAAAAAAAAAk/WMF7O-yYrws/s320/packet_len_perf.JPG" alt="" id="BLOGGER_PHOTO_ID_5021400978710944130" border="0" /></a><br />* Packet len is specified for call packet (without return result packet size).<br /><br />Performance in tps (Transactions per second):<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_SGffpHUDp6A/Ra-ZuurdWZI/AAAAAAAAAAs/8L8YGUSinrk/s1600-h/trans_per_sec_perf.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_SGffpHUDp6A/Ra-ZuurdWZI/AAAAAAAAAAs/8L8YGUSinrk/s320/trans_per_sec_perf.JPG" alt="" id="BLOGGER_PHOTO_ID_5021401137624734098" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_SGffpHUDp6A/Ra-CaerdWXI/AAAAAAAAAAU/go0kaMey09Q/s1600-h/trans_per_sec_perf.JPG"><br /></a>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-13445985797198386672007-01-08T20:44:00.000+03:002007-01-08T20:49:30.608+03:00The version 1.3 of BinaryNotes is coming...<br /><a href="http://abdurakhmanov.myphotoalbum.com/view_photo.php?set_albumName=album04&id=Rotation_of_DSC00619_filtered">This photo</a> demonstrate it's difficult work. Compare it with <a href="http://abdurakhmanov.myphotoalbum.com/view_photo.php?set_albumName=album03&id=Rotation_of_DSC00534_filtered">this photo</a>... ;)akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-34142734784678570342006-12-12T14:58:00.000+03:002006-12-12T15:00:23.351+03:00Java6 release is available now!<br />Under my tests this release improved performance really up to 20-30% (BinaryNotes)akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-4474792250760588392006-12-11T23:24:00.000+03:002006-12-11T23:27:09.752+03:00<span class="post-labels"></span> New version of BinaryNotes 1.2 is released... but 1.3 already in progress and 1.4 is planned too ... ouh...<br />I'm tired :)akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-20160551184245299432006-11-07T12:31:00.000+03:002006-11-07T12:38:37.315+03:00The new version of BinaryNotes (1.1) has been released some time ago.<br />But the new version 1.2 with support SET,DEFAULT and DER encoding is almost ready now. ;)<br />Creation of BinaryNotes needs more time, but i coming soon to new project where BinaryNotes is subproject.akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1153733677854476302006-07-24T13:33:00.000+04:002006-07-24T13:34:37.866+04:00<span id="r_text" name="r_text"> Has temporarily sold a house computer. Therefore there was a small pause.<br />:)<br /></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1148776479353716832006-05-28T04:27:00.000+04:002006-06-05T12:15:51.740+04:00<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/sflogo.php.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/sflogo.php.png" alt="" border="0" /></a><br /><br /><span style="font-size:130%;"><span style="font-weight: bold;">My Open Source Projects</span></span><br />I published some own projects on sourceforge under LGPL/GPL v2 licenses .<br />It is <a href="http://bnotes.sourceforge.net/">BinaryNotes</a> - the ASN.1 framework for C# and Java, and a simple implementation of <a href="http://ofsm.sourceforge.net/">finite state machine</a> concept including the modeling utility for creation a FSM model.akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146598473521127662006-05-02T23:20:00.000+04:002006-05-02T23:39:45.330+04:00<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/sun_tech_days.highlight.jpg.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/sun_tech_days.highlight.jpg.jpg" alt="" border="0" /></a><br /><br />Recently in Moscow city (Russia) occurred the conference Sun Tech Days.<br />I am present on this conference the report "Practical use of Java technologies in telecommunication"...<br />The photos from conference may see at my <a href="http://abdurakhmanov.myphotoalbum.com/">photoalbum</a>.<br /><span style="font-weight: bold;">Note: </span>Not all official photos is not received still. I am waiting for Sun. When i will receive the photos then i will put these to album.akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146582184210840342006-05-02T18:42:00.000+04:002006-06-05T12:16:38.496+04:00I for a long time develop for Java and now for C#, but never know that this languages supports <span style="font-size:130%;">multilingual </span>id's. It's is powerfull functionality for embedded languages, but for these must have more lingual problems. <span id="r_text" name="r_text"> I am shaken. :)<br /><br /></span><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/multilingual_cs.gif"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/multilingual_cs.gif" alt="" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/multilingual_java.0.gif"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/multilingual_java.0.gif" alt="" border="0" /></a>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146482572815812772006-05-01T15:19:00.000+04:002006-05-01T15:22:52.830+04:00<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/stallman.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/stallman.jpg" alt="" border="0" /></a><br /><span style="font-weight: bold;"><span style="font-size:130%;">Heh.. Stallman, Stallman... :)</span><br /></span><br /><span style="font-weight: bold;">When Richard Stallman learned that a compiler architect from ATI would be speaking at MIT, he immediately started organizing a protest against ATI's damaging free software policies.<br /><a href="http://www.fsf.org/blogs/community/rms-ati-protest.html">http://www.fsf.org/blogs/community/rms-ati-protest.html</a><br /></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146481182162782192006-05-01T14:53:00.000+04:002006-05-01T15:03:03.826+04:00<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/gmail.com.0.gif"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/gmail.com.0.gif" alt="" border="0" /></a><br /><div style="text-align: center;"><span style="font-weight: bold;">It's is really strange, but Google<br />nothing knows about Gmail :)</span><br /></div><span style="font-weight: bold;"><br /></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146420481258472512006-04-30T22:02:00.000+04:002006-05-01T04:00:15.920+04:00<span style="font-weight: bold;font-size:130%;" >IIOP.Net is the best!</span><br />As wrote earlier, I searched for small library (or framework) for exposure remoting interface with C# and Java bindings...<br />Today i tested a library <a href="http://iiop-net.sourceforge.net">IIOP.NET</a>. It is really working library, and maybe, the best library.<br />Heh... And again it's using basics from CORBA.<br />But have some restrictions:<br /><br /><ul><li> .NET Compact Framework does not supported (Not because the library does not support, and because of Microsoft which have not implementation .NET Remoting on CF).<br /></li><li> Have some problems with interoperability Java 2 C#</li><li> Generic collections<t> does not support (but i have added this support).</t></li></ul><br />The test has following remote interface:<br /><br /><span style="font-size:85%;"><span style="font-family:courier new;"> </span><span style="color: rgb(51, 51, 255);font-family:courier new;" >public </span><span style="color: rgb(0, 0, 153);font-family:courier new;" ><span style="color: rgb(51, 51, 255);">interface</span> </span><span style="font-family:courier new;">ITest</span><br /><span style="font-family:courier new;"> {</span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(51, 51, 255);font-family:courier new;" > string </span><span style="font-family:courier new;">produceHello(</span><span style="color: rgb(51, 51, 255);font-family:courier new;" >string </span><span style="font-family:courier new;">param); // simple operation</span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(0, 0, 153);font-family:courier new;" > ITestRemoteObj</span><span style="font-family:courier new;"> getRemoteObj(); //remote reference</span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(51, 51, 255);font-family:courier new;" > <span style="color: rgb(0, 0, 153);">ITestValueType </span></span><span style="font-family:courier new;">getObjByValue(); // object by value (valuetype) </span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(0, 0, 153);font-family:courier new;" > ICollection</span><span style="font-family:courier new;"> getCollection(); // collection</span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> // my support for generics</span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(0, 0, 153);font-family:courier new;" > System.Collections.Generic.ICollection</span><span style="font-family:courier new;"><itestvaluetype><<span style="color: rgb(0, 0, 153);">ITestValueType</span>> getGenericCollection(); </itestvaluetype></span><br /><span style="font-family:courier new;"> </span><br /><span style="font-family:courier new;"> // callback example</span><br /><span style="font-family:courier new;"> </span><span style="color: rgb(51, 51, 255);font-family:courier new;" > void </span><span style="font-family:courier new;">doCallBack(</span><span style="color: rgb(0, 0, 153);font-family:courier new;" >ITestCallBack</span><span style="font-family:courier new;"> callBack); </span><br /><span style="font-family:courier new;"> }<br /><br /><span style=";font-family:arial;font-size:100%;" >It's is really worked for C#.. But with Java (over JavaIDL) have some troubles...<br />If you needs support for a "generic" collections for IIOP.NET, then welcome to <a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1479529&group_id=80227&atid=559116">sourceforge</a>.<br />I have already submited the patch there.<br /><br /></span></span></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1146217799923065742006-04-28T13:41:00.000+04:002006-04-28T13:59:14.646+04:00<span style="font-size:100%;"><span id="r_text" name="r_text"><span style="font-weight: bold;">I analyzes a some source codes and have found a following funny code in memory manager:</span><br /><br /></span></span><span style="color: rgb(153, 153, 153);font-size:100%;" ><span id="r_text" name="r_text"><span style="font-family:courier new;">// Fill pattern for bytes preceeding allocated blocks</span></span></span><span style="font-size:100%;"><br /></span><span style="font-size:100%;"><span id="r_text" name="r_text"><span style="font-family:courier new;"><span style="color: rgb(51, 51, 255);"> unsigned int</span> prefixPattern = <span style="color: rgb(255, 0, 0);">0xbaadf00d</span>;<br /></span></span></span><span style="font-size:100%;"><span style="color: rgb(153, 153, 153);" id="r_text" name="r_text"><span style="font-family:courier new;">// Fill pattern for bytes following allocated blocks</span></span><br /></span><span style="font-size:100%;"><span id="r_text" name="r_text"><span style="font-family:courier new;"><span style="color: rgb(51, 51, 255);"> unsigned int</span> postfixPattern = <span style="color: rgb(255, 0, 0);">0xdeadc0de</span>;<br /></span></span></span><span style="color: rgb(153, 153, 153);font-size:100%;" ><span id="r_text" name="r_text"><span style="font-family:courier new;">// Fill pattern for freshly allocated blocks</span></span></span><span style="font-size:100%;"><span id="r_text" name="r_text"><span style="font-family:courier new;"><br /><span style="color: rgb(51, 51, 255);"> unsigned int </span>unusedPattern = <span style="color: rgb(255, 0, 0);">0xfeedface</span>;<br /></span></span></span><span style="font-size:100%;"><span style="color: rgb(153, 153, 153);" id="r_text" name="r_text"><span style="font-family:courier new;">// Fill pattern for deallocated blocks</span></span><br /></span><span style="font-size:100%;"><span id="r_text" name="r_text"><span style="font-family:courier new;"><span style="color: rgb(51, 51, 255);"> unsigned int</span> releasedPattern = <span style="color: rgb(255, 0, 0);">0xdeadbeef</span>;</span><br /><br /></span></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1143457942283220242006-03-27T13:25:00.000+04:002006-03-27T15:13:03.963+04:00<span style="font-size:130%;"><span style="font-weight: bold;">RPC Lite ?<br /></span></span><span style="font-size:100%;"><span id="r_text" name="r_text"> Recently wished to find easy variant of RPC framework (library, sdk, or other)...<br /></span><span id="r_text" name="r_text"> My criteria of search the following:</span><span id="r_text" name="r_text"><br /></span></span><ul><li><span style="font-size:100%;">Lite (don't use any application servers).<br /></span></li><li><span style="font-size:100%;">Support a remote interface references.</span></li><li><span style="font-size:100%;">Don't need cardinally reflow a ready to use local interfaces.</span></li><li><span style="font-size:100%;">Support for Java and C#.<br /></span></li></ul><span style="font-size:100%;"><span id="r_text" name="r_text"> </span></span><span id="r_text" name="r_text"><span style="font-size:100%;"> I have tried some found frameworks, but not one of them has not approached... :(</span><br /><br /></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1142591858912231542006-03-17T13:33:00.000+03:002006-03-17T13:37:38.916+03:00<div style="text-align: center;"><b><span lang="EN-US" style="font-family:Tahoma;"><span style="font-size:130%;">Service delivery platform for Telecommunications.<br /></span></span></b><span lang="EN-US" style="font-family:Tahoma;"><span style="font-weight: bold;font-size:100%;" >An overview of </span></span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >the ready to use platforms</span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >.<br /></span>Part III.</div><p class="MsoNormal" style="text-align: center;" align="center"> </p><span lang="EN-US" style="font-family:Tahoma;"></span><span style="font-size:130%;"><b><span lang="EN-US" style="font-family:Tahoma;"><span style="">3.<span style=""> Kabira<br /></span></span></span></b></span> <p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">Company is using third-party J2EE application servers and create own environment for them. Environment contains the service enablers (gateways, API, etc), FT/LB (Fault tolerance / load balancing) extensions and business process management). Supports powerful feature for creation service based MDA (Model Driven Architecture).<o:p></o:p></span></p> <p class="MsoNormal"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/kabira_1.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/kabira_1.jpg" alt="" border="0" /></a><br /><span lang="EN-US" style="font-family:Tahoma;"><o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">Sample architect the service with MDA (in IBM Rational):<o:p></o:p></span></p> <p class="MsoNormal"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/kabira_2.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/kabira_2.jpg" alt="" border="0" /></a></p> <p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;"><!--[if gte vml 1]><v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:468.75pt;height:314.25pt'"> <v:imagedata src="file:///D:\temp\msohtml1\01\clip_image005.png" title=""> </v:shape><![endif]--><!--[if !vml]--><br /><!--[endif]--><o:p></o:p></span></p> <p class="ul"><i><span style="font-family:Tahoma;">Engineering Results<o:p></o:p></span></i></p> <ul type="disc"><li class="MsoNormal" style=""><i><span lang="EN-US" style="font-family:Tahoma;">Performance</span></i><span lang="EN-US" style="font-family:Tahoma;">: 1080 TPS on two 2-way SPARC servers with 4 Gb of memory each <o:p></o:p></span></li><li class="MsoNormal" style=""><i><span lang="EN-US" style="font-family:Tahoma;">Latency:</span></i><span lang="EN-US" style="font-family:Tahoma;"> With no load, end-to-end latency was approximately 25 ms. </span><span style="font-family:Tahoma;">Under load end to end latency was 175 ms. <o:p></o:p></span></li></ul> <span style="font-size:100%;"><i><span style=";font-family:Tahoma;" lang="EN-US">Development Time:</span></i></span><span style=";font-family:Tahoma;font-size:100%;" lang="EN-US" > Core development: 16 man months, Additional development to fine tune business processes 6 man months.<br /><br /></span> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/kabira_3.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/kabira_3.jpg" alt="" border="0" /></a>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1142591522949518362006-03-17T13:31:00.000+03:002006-03-17T13:32:02.950+03:00<div style="text-align: center;"><b><span style=";font-family:Tahoma;font-size:15;" lang="EN-US" ><span style="font-size:130%;">Service delivery platform for Telecommunications.<br /></span></span></b><span style=";font-family:Tahoma;font-size:15;" lang="EN-US" ><span style="font-weight: bold;font-size:100%;" >An overview of </span></span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >the ready to use platforms</span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >.<br /></span>Part II.</div><p class="MsoNormal" style="text-align: center;" align="center"> </p><span lang="EN-US" style="font-family:Tahoma;"></span><span style="font-size: 130%;"><b><span style="font-family: Tahoma;" lang="EN-US"><span style="">2.<span style=""> HP Service Delivery Platform</span></span></span></b></span><span style="font-size: 130%;"><b><span style="font-family: Tahoma;">.<br /></span></b></span> <p class="MsoNormal"><span style="font-family: Tahoma;" lang="EN-US">HP develops and support own SDP solution, which primary based on J2EE or .NET application server from other company. HP deploy the implementation of API for Parlay, Parlay-X, VXML, ccXML, SS7(??), SIP, SIMPLE, SMPP, MLP, LIF. HP is offer to use development environment from third-party companies for J2EE (for example, Eclipse) and .NET (Microsoft).<o:p></o:p></span></p> <p class="MsoNormal"><span style="font-family: Tahoma;" lang="EN-US">Also HP, like IBM, deploys the Ubiquity application server for SIP based applications.<o:p></o:p></span></p>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1142591033951323832006-03-17T13:18:00.000+03:002006-03-17T13:28:50.186+03:00<div style="text-align: center;"><b><span style=";font-family:Tahoma;font-size:15;" lang="EN-US" ><span style="font-size:130%;">Service delivery platform for Telecommunications.<br /></span></span></b><span style=";font-family:Tahoma;font-size:15;" lang="EN-US" ><span style="font-weight: bold;font-size:100%;" >An overview of </span></span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >the ready to use platforms</span><span style="font-weight: bold;font-family:Tahoma;font-size:100%;" lang="EN-US" >.<br /></span>Part I.</div><p class="MsoNormal" style="text-align: center;" align="center"> </p><p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">This is part of my analytical report describes application servers and their features. The report is focused for IT technologies for telecom industries.<o:p></o:p></span></p> <p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt;"><!--[if !supportLists]--><span style="font-size:130%;"><b><span lang="EN-US" style="font-family:Tahoma;"><span style="">1.<span style=""> </span></span></span></b></span><!--[endif]--><span dir="ltr" style="font-size:130%;"><b><span lang="EN-US" style="font-family:Tahoma;">IBM WebSphere</span></b></span><span style="font-size:130%;"><b><span style="font-family:Tahoma;">.</span></b></span><b><span style=";font-family:Tahoma;font-size:14;" lang="EN-US" ><o:p></o:p></span></b></p> <p class="MsoNormal"><i><span lang="EN-US" style="font-family:Tahoma;">IBM WebSphere (WebSphere Everyplace Server for Telecom, WebSphere Business Integration).<o:p></o:p></span></i></p> <p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">J2EE application server with implemented API from ETSI/3GPP (Parlay, Parlay-X). Has pow</span><span lang="EN-US" style="font-family:Tahoma;">erful and more functionality development environment WebSphere Studio and IBM Rational Developer. Also he has built-in facilities for load-balancing services. The application server from IBM supports Business Process Management (BPM) and Business Process Execution Language. Using Rational product lines you mat introduce Business Process Diagrams (BPMN).</span></p><p class="MsoNormal"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/ibm_arch.0.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/ibm_arch.0.jpg" alt="" border="0" /></a> </p><p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">For creation services based SIP protocol, IBM offer application server from Ubiquity </span><span style=";font-family:Tahoma;font-size:100%;" >(</span><span style=";font-family:Tahoma;font-size:100%;" lang="EN-US" ><a href="http://www.ubiquitysoftware.com/">www<span style="" lang="RU">.</span>ubiquitysoftware<span style="" lang="RU">.</span>com</a></span><span style="font-size:100%;">).</span></p><p class="MsoNormal"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/ubiquty.0.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/ubiquty.0.jpg" alt="" border="0" /></a></p><p class="MsoNormal"> </p><p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">The server from Ubiquity use SIP-container based on JAIN SIP API (compliant with JSR 116).<o:p></o:p></span></p> <p class="MsoNormal"><span lang="EN-US" style="font-family:Tahoma;">For 3g networks offer the next architecture:<o:p></o:p></span></p> <p class="MsoNormal" style="text-align: center;" align="center"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/ubiquity_for_3g.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/ubiquity_for_3g.jpg" alt="" border="0" /></a></p> <p class="MsoNormal"><br /><span lang="EN-US" style="font-family:Tahoma;"> <o:p></o:p></span></p> <span style=";font-family:Tahoma;font-size:12;" lang="EN-US" ><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter"> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0"> <v:f eqn="sum @0 1 0"> <v:f eqn="sum 0 0 @1"> <v:f eqn="prod @2 1 2"> <v:f eqn="prod @3 21600 pixelWidth"> <v:f eqn="prod @3 21600 pixelHeight"> <v:f eqn="sum @0 0 1"> <v:f eqn="prod @6 1 2"> <v:f eqn="prod @7 21600 pixelWidth"> <v:f eqn="sum @8 21600 0"> <v:f eqn="prod @7 21600 pixelHeight"> <v:f eqn="sum @10 21600 0"> </v:formulas> <v:path extrusionok="f" gradientshapeok="t" connecttype="rect"> <o:lock ext="edit" aspectratio="t"> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:477.75pt;"> <v:imagedata src="file:///D:\temp\msohtml1\01\clip_image001.jpg" title="ibm_websphere"> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1139922379196560112006-02-14T16:01:00.000+03:002006-02-14T16:06:19.206+03:00<span id="r_text" name="r_text">I am tired... :(<br />A second day I am reading billions specifications from 3gpp.... :(</span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1139496178128939552006-02-09T17:38:00.000+03:002006-02-13T15:04:08.236+03:00I went to shop and finally bought a ink pen... Yeahh!<br />Really this action took a lot of time... Time to market! :)<br />But the ink pen is really cool!akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1139410755675419022006-02-08T17:30:00.000+03:002006-02-13T18:08:19.756+03:00<span style="font-weight: bold;font-size:130%;" >LL-parser & LR-parser<br /></span><span style="font-size:130%;"><span style="font-size:85%;">My colleague has sent </span></span><span style="font-size:130%;"><span style="font-size:85%;">a </span></span><span style="font-size:130%;"><span style="font-size:85%;">pair useful links about LL & LR parsers...<br />These technologies were not absolutely clear for me.<br /><a href="http://en.wikipedia.org/wiki/LR_parser">http://en.wikipedia.org/wiki/LR_parser</a><br /><a href="http://en.wikipedia.org/wiki/LL_parser">http://en.wikipedia.org/wiki/LL_parser</a><br />Long live to Wikipedia !<br /><br /></span></span><span id="r_text" name="r_text">I have sent to my colleague </span><span id="r_text" name="r_text">the link to the book for stop smoke (</span><span id="r_text" name="r_text">as reply). :)</span>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.comtag:blogger.com,1999:blog-22079548.post-1139390537856523612006-02-08T12:11:00.000+03:002006-02-08T12:32:46.906+03:00<span style="font-weight: bold;font-size:130%;" >Joke by </span><span style="font-size:130%;"><span style="font-weight: bold;">SUN ? :)</span><br /><span style="font-size:100%;"><span style="font-size:85%;">Do you know that the first 4 bytes at any java class file is </span><span style="font-weight: bold;font-size:85%;" >0xCA 0xFE 0xBA 0xBE</span><span style="font-size:85%;">?<br />CAFE BABE!! :))</span><br /><br /></span></span><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/337/2241/1600/cafebabe.gif"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/337/2241/320/cafebabe.gif" alt="" border="0" /></a>akira_aghttp://www.blogger.com/profile/04917992368878353596noreply@blogger.com