Performance of Webservices

i have a web services that returns the xml data, the size of
the repose is 40% less if i used XML Attributes instead of XML
Child Elements.
Response format when i used child elements :
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfEvent xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
xmlns="
http://tempuri.org/">
<Event>
<dDate>1</dDate>
<EventContent>test</EventContent>
<CustName>test2</CustName>
</Event>
<Event>
<dDate>2</dDate>
<EventContent>test</EventContent>
<CustName>test2</CustName>
</Event>
<ArrayOfEvent >
Response format when i used properties:
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfEvent xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
xmlns="
http://tempuri.org/">
<Event dDate="1" EventContent="test" CustName="test2"
/>
<Event dDate="2" EventContent="test" CustName="test2"
/>
<ArrayOfEvent >
does flex parse the xml data faster if i used attributes over
child elements?
and also i wanted to know some expert comments,

I'd imagine Flex (like most XML parsers) would parse the
smaller file faster, since most of them simply read tokens from the
stream as they arrive, so the less time it takes to arrive, the
quicker it can be parsed into a message.
As for the XML format, that's up to you. Typically my rule
for attributes is that it should really be data used to identify or
sort a tag, such as an ID, a timestamp or maybe a name. However,
content typically should go inside the tag, or in a child-tag
within it.
So in your case I would probably put your event tag something
like:
<Event dDate="1" CustName="test2">test</Event>
Or if you think you will have events later that might need
more content parts:
<Event dDate="1" CustName="test2">
- <EventContent>test</EventContent>
</Event>
Both reduce the size a bit by using attributes but should
hopefully remain neat enough to be useful. It's very much a case
that XML isn't 100% strict on when to use attributes or child-tags,
or rather, there are too many cases where it's unclear. So as I
say, attributes are usually useful for identifying, sorting or
specifying something important (type*). While actual data that
won't be used for any of these goes in child-tags.
* What I mean by 'type' is if you had property called
"DataType" that defined the event as being one containing text, or
an integer. Then this goes as an attribute since it determines the
behaviour when reading the content.
I hope that's useful, and hopefully some others will comment
as well as I'm hardly an expert.
As an additional note; if your requirements are ONLY
performance, then (if you can) you may wish to consider a non-XML
format. While XML is great for readability, and Flex has some great
tools for working with raw XML strings, it is very wasteful (as
you've seen), refer to the document for Sockets in Flex. However,
they are much more complex to implement. As noted in another thread
I'm trying to port a currently Java-based Binary XML format over to
Flex, but I'm very much in research stages, it's a way off yet.
However, it basically takes XML tags and turns them into short-hand
forms that are quicker to send, and sends certain data-types as raw
bytes. It's good as the difference in size due to attributes verus
tags is non-existent. But yeah, gonna be a while till I complete it
for Flex, and the Java one is not open-source as I may have to
change the specification at any time.

Similar Messages

  • Oracle 9iFS performance with WebService

    Hello,
    We use Oracle 9iFS with Oracle iAS and Oracle Database. We have implemented WebServices that use iFS API to upload/view/modify the documents in iFS. Even for a file that is ~5Mb, the performance is poor. Do we have any Benchmark testing results so that we can compare our results? We also get some Errors every now and then, which locks up the iFS instance and can only be solved by restarting the instance, the errors are like follows
    oracle.ifs.common.IfsException: IFS-21008: Unable to connect to iFS service
    oracle.ifs.common.IfsException: IFS-12214: Unable to get item in collection by name (CLASSOBJECT)
    oracle.ifs.common.IfsException: IFS-12201: Unable to resolve collection
    oracle.ifs.common.IfsException: IFS-20008: Unable to prepare query statement
    java.sql.SQLException: Refcursor value is invalid
    or
    oracle.ifs.common.IfsException: IFS-21008: Unable to connect to iFS service
    oracle.ifs.common.IfsException: IFS-21002: Unable to construct S_LibraryObject for class oracle.ifs.server.S_LibrarySession (unexpected Exception occurred in invoked method)
    java.lang.Exception: java.lang.OutOfMemoryError
    or
    oracle.ifs.common.IfsException: IFS-21008: Unable to connect to iFS service
    oracle.ifs.common.IfsException: IFS-20001: Unable to get schema version
    oracle.ifs.common.IfsException: IFS-20000: Unable to get repository parameter (SCHEMAVERSION)
    java.sql.SQLException: Bigger type length than Maximum
    Are these errors because of - Not applying patches or some problem with concurrent iFS access. We have identified an issue with memory leak and are working to resolve it, but we feel that there maybe more issues. Any help would be appreciated, thanks

    That depends on at least three things:
    (1) what is the range of words that will appear in the document set (wide range of documents = smaller resultsets = better performance)
    (2) how precise are the user's queries likely to be (more precise = smaller resultsets = better performance)
    (3) how many milliseconds are your users willing to wait for results
    So, unfortunately, you'll probably have to experiment a bit before you'll know...

  • How to improve the performance of Webservice?

    hi all,
    I have just finished a implementation of webservice about communication between Delphi
    client and Weblogic webservice 7.0. I found that the performance of transfering data
    is too slow by comparing with only http . I want to ask whether there are any factors
    that decrease its performance, and how to overcome it.
    I hope that there are many information for this.
    If you know, please reply me.
    thank you very much!

    What is the data you are trying to send? If it is XML then we
    need to parse it to make sure that it is well formed.
    Also, i would like to know more details about the test
    you are running (like, the size of the data, hw/os/vm, and
    the numbers you are getting). so that i can compare it
    with the local benchmarks we have.
    regards,
    -manoj
    "Gary Chan" <[email protected]> wrote in message
    news:3d04e31d$[email protected]..
    >
    hi all,
    I have just finished a implementation of webservice about communicationbetween Delphi
    client and Weblogic webservice 7.0. I found that the performance oftransfering data
    is too slow by comparing with only http . I want to ask whether there areany factors
    that decrease its performance, and how to overcome it.
    I hope that there are many information for this.
    If you know, please reply me.
    thank you very much!

  • Performance issues with Webservices in XI

    Hi,
    Friends,
    my issue is with the performance of webservices.how to improve performance of webservices in XI?
    We don't have any hardware issues.no big mapping or payload.webservice is actually residing in the XI server.there is a bottleneck somewhere which is hampering the performance.
    Any advice is greatly appreciated!
    Thanks and Regards,
    Pavan M.
    Chicago,US

    Hi,
    Is XI a webservice provider or consumer?
    If XI is the consumer, then you can use any SOAP client tool (there are lots of generic 3rd party soap client test tools on the internet) to execute the webservice to detemine whether it is causing performance problem.
    If XI is the provider, you can take the sender soap adapter out of the equation by using a HTTP client test tool.
    The SXI_MONITOR also provides execution time for every step in the pipeline of the XI engine.
    Regards,
    Bill

  • Webservice call and classes

    Hi all,
    I'm trying to define a class in ActionScript (Flex 3) with a
    webservice call. This class will only do the call and write the
    result to a private variable. This variable can be read with a
    getter function. The call works and the result is written to the
    specific variable, but the calling script is to fast...
    The triggering script creates the class instance and calls
    the method which performs the webservice call, after this action
    the script will read the getter to get the results. This should
    return the result of the call but this method returns the default
    value. My guess is the call to get the result (getter) is performed
    before the result is returned and written to the instance variable
    of the class (asynchrone webservice call). I'm not sure how to
    solve this problem, does anyone has some ideas?

    "Tor..." <[email protected]> wrote in
    message
    news:gp2jnn$d2$[email protected]..
    > Hi all,
    >
    > I'm trying to define a class in ActionScript (Flex 3)
    with a webservice
    > call.
    > This class will only do the call and write the result to
    a private
    > variable.
    > This variable can be read with a getter function. The
    call works and the
    > result
    > is written to the specific variable, but the calling
    script is to fast...
    >
    > The triggering script creates the class instance and
    calls the method
    > which
    > performs the webservice call, after this action the
    script will read the
    > getter
    > to get the results. This should return the result of the
    call but this
    > method
    > returns the default value. My guess is the call to get
    the result (getter)
    > is
    > performed before the result is returned and written to
    the instance
    > variable of
    > the class (asynchrone webservice call). I'm not sure how
    to solve this
    > problem,
    > does anyone has some ideas?
    http://www.rubenswieringa.com/blog/binding-read-only-accessors-in-flex
    http://www.joelconnett.com/flex-binding-to-a-custom-getter.html

  • Air 3.3 and background ios apps

    Hi All
    I cannot find some coherent information on this so I am asking here.
    I need to write an iOS app that needs to perform a webservice call every x minutes to update the slqite db on the device, even if the application is not running in the foreground.
    From google what I could find out was that iOS will only allow your app to run a small time after closing(to finish an upload etc).
    e.g. "AIR does not provide support for this iOS background processing model":  http://www.adobe.com/devnet/air/articles/considerations-air-apps-mobile.html#articleconten tAdobe_numberedheader_5
    but then later " applications may now support location updates and networking in the background": http://forums.adobe.com/message/4380335http://forums.adobe.com/message/4380335
    Can I do what I need in Air 3.3+ an iOS 5.1+ ?
    Thank You

    Some of the statements in this thread are no longer true, or need to be updated.
    Here is a recap:
    As of AIR 3.9, background execution will work on iOS+Android with render mode set to 'direct' ( which implies that you are using Stage3D ).
    For background execution to work in iOS, you need:
    to set NativeApplication.nativeApplication.executeInBackground = true, in your as3 code somewhere ( note: strangely, background exec on iOS has worked for me in the past even by not doing that ).
    to add in the iPhone section of your app manifest ( *-app.xml ):
    UIApplicationExitsOnSuspend = false
    UIBackgroundModes = audio ( and/or location, or some other background mode ).
    a good excuse / reason :  since battery-gate on the iPhone4, Apple has  tightened its policies regarding background execution.  For example:  last time I tried, setting UIBackgroundModes=audio was only allowed if the app was intended to play a sound persistently in the background ( not occasionally, such as an alarm clock sound ).
    For local notifications, I recommend Distriqt's local notification ANE ( Android+iOS), since it's the ony one I know which uses the AlarmManager api on Android ( Koesler's Android Local notif doesn't last time I checked ).  This means that on Android, the local notification can be scheduled for a later time ( same as iOS ), and will fire EVEN if the app is either minimized or has been closed properly ( meaning closed by the OS, or by the user via NativeApplication.nativeApplication.exit() -- note: force-stopping is the exception and cancels scheduled notifications on Android ).  You can also have the local notification play a custom sound which is up to 30 secs long ( mp3s on Android / cafs on iOS).  Sound will be audible on both platforms, even if the device is suspended.  This is ideal for an alarm-clock, for example.  The downside of local notifs is that they don't execute code, per se, however they can pass a data payload ( text ) back to the app, if it is running ( even if minimized ), which a handler can receive to do stuff.

  • Automation or Management?

    Greetings,
    I've been given the opportunity to think about moving into a QA mgmt role, or switching into a new Automation group. Automation is an area that I would like to learn more about...
    Which one do you think it's better thinking about job security?
    Thank you

    --As said  one can learn tool automatically, but important is leading the team.
    I have slightly different opinion. Now a days we have so much in automation
    --we have record/replay tools
    --performance tools
    --webservices
    --XML/XSL
    --VOIP
    There is so much technical knowledge involved in these tools which can't be acieved without working LIVE on these tools. But suppose you are a project manager in automation then your project management skills are still with you because you are` leading a team in automation. Along with that you will earn expertise in the tools which has nice market value as well. So I would suggest you to move for automation.

  • Need some inputs

    hi,
    I have created a web service wherein on submitting the employee name, i can get the balance in the account of the employee.
    my service communicates with database which is an excel sheet. and the client is a servlet which invokes the service.
    hi all,
    I have created a web service wherein on submitting the employee name, i can get the balance in the account of the employee.
    my service communicates with database which is an excel sheet. and the client is a servlet which invokes the service.
    i have used Apache soap implementation for this.
    I have tried this out of my interest and want to get some inputs as where does this application stand.
    Also if anyone can tell me wht can be a real world financial application which i can try making as web service.
    How can i make this available on the net.
    any help would be highly appreciated.
    Thanks and regards
    neha

    Generally webservices are more useful in solving business application in which multiple organizations are involved. Suppose if one organizations creates the services they perform as webservices the other organization can use those services. For example customer order servise, health insurance and all. Better you send a mail to mail id then I can help you more. [email protected]

  • T-SQL query performance (CLR func + webservice)

    Hi guys
    I have CLR function which accepts address as a parameter, calls geocoding webservice and returns some information (coordinates etc.)
    I run SQL query
    SELECT *FROM T CROSS APPLY CLR_Func(T.Address)F
    Table contains 8 million records and obviously query runs very slow.
    Do you know any nice way to improve performance in this situation?
    Thank you,
    Max

    No WHERE condition?  SQL Server will call the function 8 million times ....
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Webservice implementation options and their performance ranking?

    If I am to to implement a webservice from/to SAP ERP,  I consider I have at least 3 options:
    1) Without PI - generating webservice from an RFC enabled wrapper function module (or bapi) inside SAP ERP
    2) With PI, exposing a WS using RFC adapter in PI that uses an RFC wrapper fm (or bapi) in ERP
    3) With PI, exposing a WS using ABAP proxy in ERP where the proxy uses non-RFC wrapper fm (or bapi).
    Using ABAP proxy is recommended (instead of RFC adapter) for syncronous interfaces between PI and SAP applications I have heard, but still wanted to take RFC adapter as option.
    Does anybody have experience about performance comparison in these options, if you have tested them all? Such a test must use same context e.g. using BAPI_CUSTOMER_GETDETAIL and you should have a client that can use them all (you probably have different wsdl for each and your client must calculate/trace response times. I know it is possible to monitor response times inside XI, but practically absolute response times can be calculated only in the client.
    To be honest, I am more interested in hearing performance difference between generating WS from ERP directly or from PI. Options 2) and 3) are just PI variations. But if you have tested options 2) and 3) as well please let me know.
    I was thinking of testing all scenarios myself, but if you have experience already, then you would save my time.
    br: Kimmo

    Hi Kimmo,
       Whatis the PI version you are using?
    I think you have other options too.
    4) Create a service interface and implement the enterprise service in the backend.
    http://www.sappi.sapag.co.in/flat-file-to-file-senario/creating-custom-enterprise-services-using-abap-and-xi/
    The option 1 that you mentioned and option 4 (That i have mentioned) will be of comparable performace.
    From a performance stand point, option 1(or 4) will be the fastest (at least in theory ) as we do not have any mediating system.
    But from a standards perspective, the option that i have suggested, is better (Read mre about SOA concepts to appreciate this more).
    General suggestion is that we should not be using PI for User- machine integration (which is your case).
    Best Regards,
    Ravikanth Talagana

  • Webservices Performance impact Vs. JCo

    Hi,
    We are about to begin development and we are evaluating about developing with Webservices in the Back End following this instructions
    /people/sridhar.k2/blog/2006/09/12/creating-and-exposing-bapi-as-web-service-and-using-it-in-web-dynpro
    or using JCo, one of the issues we are worried about is performance, has some one messured the Performance degradation from using Webservices instead of JCo?
    Kind Regards!
    Gerardo J

    Hello,
    I was just looking for the same information. I was in kind of the same trouble as you.
    Exactly, according to what I managed to find, which is not much, about performance, rfc is better, but it involves more time in development.
    The article which the other contributor refers to is :
    u201CWeb services or RFCs u2014 choosing the right technology for your SAP integration challengesu201D by Prof. Dr. Willi Nüßer, May 15, 2006, available in SAP Professional Journal.
    Unfortunately, I have no access to this source. If you would have further information about this topic, I would appreciate a lot if you could refer it to me.

  • PI synchronous webservice performance

    - Ever stuck with the question of ways to reduce the response times of XI webservices calls??
    - Need better performnace
    - Need better response times........
    <u><b>Just Published</b></u>
    /people/community.user/blog/2007/07/09/pi-beef-up-the-performance-of-synchronous-webservices
    Cheers,
    Naveen

    Hello Michal,
    Currently direct connection is only for the adatper. Since abap proxies don't recide on adapter framework this cannot be done. But you never know. For the first time SAP is using the term Service Bus  in the presentation. This opens up a whole new space. if SAP is moving away from a central hub design to a more ESB(enterprise service bus) then there are new features to be explored.
    Cheers,
    Naveen

  • Perform Risk Analysis on Request - Not available via WebService call?

    Hi,
    I'm using AC 5.3 and using the SAPGRC_AC_IDM_SUBMITREQUEST to submit a request to CUP.
    At CUP I have configured to 'Perform Risk Analysis on Request'.
    This does work, when I create a request using the CUP Web Interface.
    The same request made through the CUP Web Service request doesn't fire up the RIsk Analysis.
    Is it a bug, a feature, a limitation or did I miss something?
    Regards
    Holger

    Hi Harleen,
    yes, the SAPGRC_AC_IDM_RISKANALYSIS Web Service call work as well and comes back with risk information.
    But this is a different story.
    When starting a manual request and a risk occurs, the approver does see the risk in the approval form.
    When starting the rquest through the WebService and a risk occurs, the approver does not see a risk and must start a manual risk analysis to be informed about existing risks.
    This feature is very bad, because it limits the functionality drastically.
    Is there a way to make this an enhancement request?
    KInd Regards
    Holger

  • How to perform a WS-transaction between two webservices implemented in EJB3

    Hello,
    I would like to have an example of how to perform a WS-Transaction between two web services implemented with EJB 3.0. It should be done through code.
    Thanks in advance.

    Bit a late answer, btu I don't like googling for somthing and founding open questions about the topic I search for.
    Have a look at
    http://jbossws.jboss.org/mediawiki/index.php?title=JAX-WS_User_Guide
    and
    http://soa.sys-con.com/node/39769
    Cheers

  • Single Webservice to perform more than 1 function in different systems

    Hello,
    Just to give a brief idea what i am trying to achieve is:
    I want to create a Web Service which will do some operations in R/3 , some operations in SAP-CRM and some in a .Net System.
    So lets say:
    I have a portal from where my Sales order is getting created in CRM, and then some validations and availability check has to be performed in a .Net System and finally Delivery of that SO should be done in SAP R/3 .
    So i need to create a Web Service which can perform these functions in different systems.
    So how can i design my scenario.
    We can manage this through creating RFC's in different systems and calling them but how about .net system and what if it has to be done through Web Service approach only.
    All inputs are most welcome.
    Regards,
    Mayank

    Hi Mayank,
    The best approach to follow would depend entirely on what solutions you have in your system ladnscape. It's a bit of an open ended question. I think you're complicating it though.
    Unless your mandate is specifically to use web services & there is a reqyurement for real-time communication, I would use RFC's all around, even for the .NET portion, see more info on making RFC calls to .NET using the SAP .NET Connector (SMP Login required):
    [https://websmp103.sap-ag.de/~form/sapnet?_SHORTKEY=01100035870000719347&]
    This way you will ensure delivery (or retry mechanisms at the very least). You could also ensure delivery if all parties involved support WS-RM. If you specifically need use web service communication for the .NET call, you have some options like:
    - RFC to SOAP call from SAP once the .NET connector is functioning.
    - Generate a Service Consumer Proxy on the SAP side using the WSDL provided from the .NET developer (once the service is ready on their side) & trigger a service call as & when you need to.
    If you need to use web serivce communication all around then you can do that as well (with some Abap Proxy Provider / Consumer dev work with some custom code OR you could use SAP Enterprise Services if available). It just means extra Abap development work when you already have all the tools (IDOCs etc.) to trigger RFC calls for all the SAP-to-SAP calls.
    Regards, Trevor

Maybe you are looking for

  • IPhone 3GS (iOS 5) will not sync, stuck on *backing up* in iTunes 10.6.3.25

    I recently updated iTunes to the latest update for Windows, since then, whenever I connect my phone and try to sync it just gets stuck in *backing up* for ages.. if I leave it it will be in backing up for hours.  I cannot sync my phone or add any con

  • ITunes does not install properly, 'iPod Service' could not be installed

    During an iTunes update to latest version. The update failed, I downloaded manually and reinstalled but it still failed. I remove all apple applications from the PC. redownloaded iTunes and reinstalled again. This time I got the message 'Service 'iPo

  • Yosemite won't let me open my programs?

    After installing the new Yosemite mac system, I was told to uninstall and remove all adobe products off my computer, which I did and now the disk I have is no longer allowing me to reinstall my programs. How do I fix this?

  • Slow MacBook and keep needing to reboot Safari

    I have a Macbook, basic 13'', about two years now. It's charming and efficient, but I must say it's lost its original swiftness. My Safari is also not in top shape- it sometimes quits while I'm in the middle of working, or the cursor would show me th

  • How to burn FROM LIBRARY?

    Howdy- How can I burn a CD of music straight from my library? I know I can burn from a playlist, but say I want to burn a certain album. I do a search in the upper right, and that album is displayed, along with other songs by that artist. If I highli