WL 8.1 JMS Performance has improved
Hello,
Just wanted to let everyone know that we've re-run our JMS stress tests
against WL 8.1 and there was drastic improvement in performance. WL 7.0
had serious performance problems in the stress tests we ran earlier this
year, and was often the lowest in the pack, especially with large
message sizes. However, WL 8.1 is now performing near the top out of the
box.
Thought others may find this interesting. I can't publish any of the
tests, etc, since this is against the BEA development license, so I
can't show the data to back up my statement, but I promise I don't work
for BEA!
Thanks
Thanks for the post. Just wait for 9.0!
P.S. In case you don't already know, there
are a number of JMS tuning notes here:
http://dev2dev.bea.com/products/wlserver/whitepapers/WL_JMS_Perform_GD.jsp
(Recently updated for 8.1.)
Steven Ostrowski wrote:
> Hello,
>
> Just wanted to let everyone know that we've re-run our JMS stress
> tests against WL 8.1 and there was drastic improvement in performance.
> WL 7.0 had serious performance problems in the stress tests we ran
> earlier this year, and was often the lowest in the pack, especially with
> large message sizes. However, WL 8.1 is now performing near the top out
> of the box.
> Thought others may find this interesting. I can't publish any of the
> tests, etc, since this is against the BEA development license, so I
> can't show the data to back up my statement, but I promise I don't work
> for BEA!
>
> Thanks
>
Similar Messages
-
WEBLOGIC JMS performance ?
hi ,
I tried to find some numbers , about how much messages (in the diffrerent
categories - ptp or pub/sub) can a weblogic server
can stand - messages / sec , or some benchmarks,
but i didn't find any on the web ..
any one has any idea / link for such benchmark / performance test ???
I would appriciate any answer !
thanks!
1) Start with the "WebLogic JMS Performance Guide" white-paper
on dev2dev.bea.com. This guide has no numbers, but
it has general guidelines. Performance is not just
numbers...
2) General note:
In 7.0+ JMS file stores, BEA provides 3 disk write policies.
The default is "cache-flush", as that is transactionally safe
in all cases. The policy may have a dramatic effect
on performance. (WL JMS defaults to "cache-flush", IBM MQ
always uses "direct" - as far as I know, and many smaller
JMS players default to "disabled".)
3) The book
"J2EE Performance Testing with BEA WebLogic Server"
by Peter Zadrozny, Philip Aston, Ted Osborne
contains JMS numbers, and a benchmark tool. Keep
in mind that the numbers here are all "producer
limited". All the benchmarks are run with
a single producer, so the numbers often show little
scaling. (Most apps increase producer counts
as they scale.)
Tom, BEA
Amir Ben-Amots wrote:
> hi ,
>
> I tried to find some numbers , about how much messages (in the diffrerent
> categories - ptp or pub/sub) can a weblogic server
> can stand - messages / sec , or some benchmarks,
>
> but i didn't find any on the web ..
>
> any one has any idea / link for such benchmark / performance test ???
>
> I would appriciate any answer !
>
> thanks!
>
>
-
Hi,
I'm using WL7.1 SP2 for a JMS based application. The database is SQLServer 2000,
and the JMS queues are persistent on this DB.
A client outside the Weblogic Server connects and fires lots of JMS messages to
the application. These messages are consumed by a pool of MDB's.
I don't think it's performing as well as it could.
For example, if I un-deploy my application, and fire 80,000 JMS messages at the
server, it takes around 10 minutes to persist these messages to the queues. All
good so far.
However, with the application deployed, the same number of messages take around
3 hours. The messages are consumed and processed as fast as they can be persisted
to the JMS queue. It's almost as if the messages are being synchronysly put on
the queue, ie. control is not returned to the client until the message is consumed
and processed. Unless I'm misunderstanding this, as soon as the messages is successfully
persisted to the JMS queue, control should be passed back to the client.
What I'd expect to happen is that the client would take around the same time post
the messages to the JMS Queue, ie. about 10 minutes - and the Pending Message
count to increase on the WL Server. Once all 80,000 messages were on the queue,
the Pending Message count would gradually go down as the messages were processed.
If I'm misunderstanding the way this works, please let me know. If you need any
further info, please ask and I'll post the answers.
Thanks,
Richard Kenyon
EDS - UK
No problem.
Performance is one of my hot-buttons, so I can't help but
noting that when it comes to queueing, or even asynchronous
invokes in general, slowing down the requester is often
goodness. It helps put "back-pressure" on the requesting
application, and so helps prevent a permanently growing
request backlog that the slower request handling
applications could never dig their way out of.
Tom
P.S. An updated version of the JMS performance
guide will be released in the next few weeks. It has
corrections, adds information about 8.1 features, and
expands information in a number of areas. I'll post
a link in the newsgroup when it comes out.
Richard Kenyon wrote:
> Thanks Tom,
>
> I suspected (and hoped!) that this would be the answer. I just needed
> clarification that I wasn't being stupid :-)
>
> I'll have a look at the Performance guide you mentioned.
>
> Thanks,
> Richard Kenyon
> EDS - UK
>
> "Tom Barnes" <[email protected]> wrote in message
> news:[email protected]...
>
>>When the application is active, it is forcing the server to do
>>other work as well. In effect you are sharing a limited
>>resource. Transactions (if applicable), your
>>application code, your application receives, etc.
>>In effect, the sender is slowed down because it
>>is competing with the MDB application for resources.
>>I suggest you read the JMS Performance
>>Guide white-paper on dev2dev.bea.com.
>>
>>Tom
>>
>>Richard Kenyon wrote:
>>
>>>Hi,
>>>
>>>I'm using WL7.1 SP2 for a JMS based application. The database is
>>
> SQLServer 2000,
>
>>>and the JMS queues are persistent on this DB.
>>>
>>>A client outside the Weblogic Server connects and fires lots of JMS
>>
> messages to
>
>>>the application. These messages are consumed by a pool of MDB's.
>>>
>>>I don't think it's performing as well as it could.
>>>
>>>For example, if I un-deploy my application, and fire 80,000 JMS messages
>>
> at the
>
>>>server, it takes around 10 minutes to persist these messages to the
>>
> queues. All
>
>>>good so far.
>>>
>>>However, with the application deployed, the same number of messages take
>>
> around
>
>>>3 hours. The messages are consumed and processed as fast as they can be
>>
> persisted
>
>>>to the JMS queue. It's almost as if the messages are being synchronysly
>>
> put on
>
>>>the queue, ie. control is not returned to the client until the message
>>
> is consumed
>
>>>and processed. Unless I'm misunderstanding this, as soon as the messages
>>
> is successfully
>
>>>persisted to the JMS queue, control should be passed back to the client.
>>>
>>>What I'd expect to happen is that the client would take around the same
>>
> time post
>
>>>the messages to the JMS Queue, ie. about 10 minutes - and the Pending
>>
> Message
>
>>>count to increase on the WL Server. Once all 80,000 messages were on the
>>
> queue,
>
>>>the Pending Message count would gradually go down as the messages were
>>
> processed.
>
>>>If I'm misunderstanding the way this works, please let me know. If you
>>
> need any
>
>>>further info, please ask and I'll post the answers.
>>>
>>>Thanks,
>>>Richard Kenyon
>>>EDS - UK
>>>
>>
>
>
-
hi All,
Our Browser based Infopath forms have slowed down drastically after applying SharePoint 2010 SP2. Prior to this, we had SharePoint 2010 SP1 and the timings was around 10 seconds (single user) for the entire infopath form to be displayed which has 10-12
views and 5 data connections and 15 business rules and around 100 fields.
But now after applying sharepoint 2010 sp2, the performance has slowed down and it now takes for a single user around 50 seconds.
Refer to the link below, which we followed by applying the patch as well, but the performance is still the same very slow.
http://social.technet.microsoft.com/Forums/sharepoint/en-US/0b673324-01c4-49f7-86cb-647aa43fefd6/infopath-browser-forms-extremely-slow-after-service-pack-2-upgrade?forum=sharepointadminprevious
We have raised a ticket with Microsoft, but there is no concrete resolution as to what component of the infopath has made the form rendering and display slow.
Can someone point me to the right resource or knowledge base where i can do a kind of debug, which tells me exactly which infopath dlls are the issue or which part of my form is taking more time. I am using AOLPageTest and Fiddler, but they do not give me
any details where exactly is the bottleneck.
Any tools that give me the details of the bottleneck.
Thanks and appreciate your help in this.
Regards
Ram
Thanks Ramhi inderjeet,
The application has gone live and its on production, the same application is on pre-prod and UAT, system testing and integration environments.
The infopath form used to work very well on all these environments before we installed sharepoint 2010 sp2. but the moment we installed sharepoint 2010 sp2, the infopath forms have slowed down.
Microsoft has acknowledged that there is an issued with sharepoint 2010 sp2 and infopath form performance, but they are not able to provide an appropriate fix on this.
We have another environment where there is no sharepoint 2010 sp2 applied only sp1 is applied and the infopath form works very well within fraction of seconds.
So your point no. 1 and 2 and 3. does not reveal anything. Fiddler does not give any detailed component by component breakup where the time is taking more.
The form used to work very well before we applied sp2.
I want to know a tool that gives me exactly component by component grant chart kind of breakup of time taken when the infopath url is requested on the browser.
Thanks
ram
Thanks Ram -
my iphone 4 performance has degraded after i did ios 5.0.1 update.. there is a visible delay in all the actions.
Basic troubleshooting is reset, restart, restore. Has any of this been tried?
-
Hi All,
i read the BEA WebLogicTM JMS Performance Guide (July 31, 2003) and have some
questioon:
http://dev2dev.bea.com/products/wlserver/whitepapers/WL_JMS_Perform_GD.jsp
The only thing that indicates performance in the whole document is page 60 with
the 3 examples.
the problem there is that the arithmetic just doesn't work.
All examples use a 100 Mbit link at 80% efficiency, which gives 10 mbyte/sec.
Example 1: Messages of length 1Mbyte, 2 operations: (Calculating in IN Kbytes)
10000/(1000*2) = 5. Bravo !!!
Example 2: Message length 50kbyte, 10 operations : 10000/(50*10) = 20. (Am i wrong
? not 160 as the document says). Out of each 10 operations, 1 is write (send)
and 9 are receive (read) , so each subscriber gets 2 messages per second, and
not 18 as the document says.
Example 3: Message size 50kByte, 2 Operations (because of the Multicast). 10000/(50*2)
= 100 , and not 800. each subscriber gets 50 per second, and not 89.
The arithmetic is simple, you can do it on your fingers - no need for excel.
Can you, Please
1. Explain the calculations
2. Supply real life, Measured statistics that DO take into consideration server
power, Memory constraints and other trivial, but necessary, facts of life...
Thanks yuval
Well, I must admit I was the primary author, so you will have
trouble getting additional info. But, heck, I'm game:
(1) We have literally had dozens of customers not
realize that the network can be a bottleneck, thus the
network calculations. Congrats on being one of the majority
that didn't need this bit of guidance, but please don't look
down on those that do - they are pretty bright people in
their own right.
(2) Memory usage is a function of number of messages,
usage of queues or topics, and message size. Assuming
paging is enabled, I think it is fair to be conservative
and estimate for queues:
number of messages * .5K = memory used
This assumes .5K overhead per message - as the guide
states, WL JMS does not page out message-headers, so
messages have overhead even when they are paged out.
(3) This is a performance guide, not a capacity guide, the
guide was not intended to address capacity.
As the paper states, there is a reason for this.
Hard performance statistics are VERY application and
hardware dependent. To get anything even close to the statistics
that map to a particular app, run the app. That said, the performance
book referenced in the guide DOES contain statistics, pretty
graphs, and even a tool. Keep in mind that the first edition of the
book never tests using multiple producers - which limits
scalability, and kind of limits the applicability of some
of the graphs - but the authors realize this, and are addressing
the issue in the next addition.
Tom
Yuval Avni wrote:
> Hi All,
>
> i read the BEA WebLogicTM JMS Performance Guide (July 31, 2003) and have some
> questioon:
> http://dev2dev.bea.com/products/wlserver/whitepapers/WL_JMS_Perform_GD.jsp
> The only thing that indicates performance in the whole document is page 60 with
> the 3 examples.
> the problem there is that the arithmetic just doesn't work.
>
> All examples use a 100 Mbit link at 80% efficiency, which gives 10 mbyte/sec.
>
> Example 1: Messages of length 1Mbyte, 2 operations: (Calculating in IN Kbytes)
> 10000/(1000*2) = 5. Bravo !!!
>
> Example 2: Message length 50kbyte, 10 operations : 10000/(50*10) = 20. (Am i wrong
> ? not 160 as the document says). Out of each 10 operations, 1 is write (send)
> and 9 are receive (read) , so each subscriber gets 2 messages per second, and
> not 18 as the document says.
>
> Example 3: Message size 50kByte, 2 Operations (because of the Multicast). 10000/(50*2)
> = 100 , and not 800. each subscriber gets 50 per second, and not 89.
>
> The arithmetic is simple, you can do it on your fingers - no need for excel.
>
> Can you, Please
>
> 1. Explain the calculations
> 2. Supply real life, Measured statistics that DO take into consideration server
> power, Memory constraints and other trivial, but necessary, facts of life...
>
> Thanks yuval
-
just upgraded iphone today to Ios6 and although siri has improved i STILL cant do location based reminders! any ideas?? i am in the uk using Vodafone
What do you mean you can't do them? What happens when you try?
-
Jms performance wl 6.0 sp2
Our goal is for the numbers to be the same or better in 7.0.
We did not achieve that goal for the 7.0 beta but we have
improved things since then.
Some tests will do significantly better in 7.0 over 6.X.
"Larry Presswood" <[email protected]> wrote in message
news:[email protected]...
> We are using JMS queues with the following test cases
>
> Test Case 1
> JMS with DBMS Backing Store
> For this we get about 300 ms per transaction - Average JTA time
>
> JMS with File Store
> For this we get about 150 ms per transaction - Average JTA time
>
> JMS - No persistent store
> For this we get about 30 ms per transaction - Average JTA time
>
> In our transaction we do the following
>
> utx.begin
> Get Dbms Connection
> Call Stored Proc
> Send to queue
> utx.commit
>
> This is using sybase 12.x as a backing store and our dba's have
> tried to tune JMSStore/JMSState.
>
> Is the degradation in performance along the lines with what you
> have seen from other folks and in your own testing??
>
> Will 6.1 or 7.0 significantly improve these times or leave them
> unchagned
> hopefully not worse.
>
> Any ideas??
>
>
> Our test case is 20 clients sending at a rate of 1 msg/second
> These clients are also receiving as fast as possible.
>
> Test is exactly the same in all three configurations.
>
>
>
>
>
-
JMS Performance in Weblogic 10 ?
Hi
In our Production Environment (weblogic 10 MP1).we have 4 managed servers ( App1, App2, app3, App4 )on 4 different physical machines, but we have only 1 JMS server on App2. The JMS Modules is connected to whole cluster and there is 4 single queues "NO DISTRIBUTED QUEUES" & one connection Factory. I know it will be the best if we have 4 managed server with 4 JMS server. But do Distributed Queue configuration will affect the performance? if yes How?
Also please give any other suggestions as well..
Thanks in Advnance.Hi,
A DQ would improve performance for two reasons:
(1) The queueing engine's work would be equally divided between four machines rather than only one machine.
(2) There would be less network overhead - perhaps even none depending on your design. Applications running on App1, App3, and App4 would no longer to make remote requests to "App2" in order to send or receive messages. Instead, they would simply invoke JMS locally. Network overhead can sometimes be the dominant bottleneck in a performance benchmark - so removing the network can potentially be a huge win.
A DQ also improves high availablity - if App2 is down, messages can still be processes on App1, 3, and 4.
Tom
Edited by barnes at 06/12/2008 4:21 PM -
I'm using it on a Samsung Captivate SGHi-897 with Jellybean 2.2 (I'm unable to upgrade the OS @this time). Firefox was recommended by a freind, however, so far I've been very disappointed with it, as, it is extremely slow and constanly crashes. I've tried all of the suggestions provided, but there is no improvememt. I realize it may be not all that compatible with this properly working device or OS. I have Samsung Galxaxy SGHi-727 Skyrocket with IC 4.1, however, I've been waiting for a part for it coming from Aisa, which seems to be taking forever, so in the meantime I'm.stuck with this. I was wondering if you may have any suggestions on how to speed it up and prevent it from crashing so much, other than what's on your help guide since those changes I've tried make no improvement in it's performance. I would very much prefer to use Firefox on this device, as well as, after I repair my other device for a number of other reasons, but if I'm unable to improve it, I'll just go back to what I was using. Thank you and be well.
twich83115
[ed. removed email]Suggestion for improvement:
I'd like <select size="1" multiple> to provide a dropdown with checkboxes like this:
http://demos.telerik.com/aspnet-ajax/combobox/examples/functionality/checkboxes/defaultcs.aspx
Can that be done?
Thanks -
BPEL process failing in many instances due to JMS performance issue...
Hi All,
We are using a JMS adapter as partner link in a BPEL process to produce messages to JMS Queue.
We are getting an error while producing a message to a JMS Queue.
The error comes for 1 or 2 instances among 5 to10 intsances. (all these instances ran with in 1 or 2 seconds).
We are using Oracle 10G SOA suite.
This error is getting in the Production environment.
The error is as follows (took error from server log).
Failed to handle dispatch message ... exception ORABPEL-05002
Message handle error.
An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessage"; the exception is: faultName: {{http://schemas.oracle.com/bpel/extension}bindingFault}
messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
parts: {{summary=file:/sw/appaia/product/SOA/bpel/domains/default/tmp/.bpel_CurrencyExchangeListEbizJMSProducer_1.0_4ec528ec93a8a6ff0278fab9701dcc71.tmp/CurrencyExchangeListEbizJMSProducerV1.wsdl [ Produce_Message_ptt::Produce_Message(OutputParameters) ] - WSIF JCA Execute of operation 'Produce_Message' failed due to: Adapter Framework unable to create outbound JCA connection.
file:/sw/appaia/product/SOA/bpel/domains/default/tmp/.bpel_CurrencyExchangeListEbizJMSProducer_1.0_4ec528ec93a8a6ff0278fab9701dcc71.tmp/CurrencyExchangeListEbizJMSProducerV1.wsdl [ Produce_Message_ptt::Produce_Message(OutputParameters) ] - : The Adapter Framework was unable to establish an outbound JCA connection due to the following issue: oracle.j2ee.connector.proxy.ProxyInterceptException: javax.resource.ResourceException: RollbackException: Transaction has been marked for rollback: null [Caused by: RollbackException: Transaction has been marked for rollback: null]
; nested exception is:
ORABPEL-12511
Adapter Framework unable to create outbound JCA connection.
I tried the below JMS tunings with differnt combination, but no improvem
Please let me know if any other logs or any other information is required.
Thanks,
PershadOne of the values in the oc4j-ra.xml has the below values:
<connector-factory location="OracleASjms/MyXAQCF" connector-name="OracleASjms">
<config-property name="jndiLocation" value="jms/XAQueueConnectionFactory"/>
<config-property name="autoCloseSession" value="false"/>
<connection-pooling use="private">
<property name="waitTimeout" value="300" />
<property name="scheme" value="fixed_wait" />
<property name="maxConnections" value="50" />
<property name="minConnections" value="0" />
</connection-pooling>
<security-config use="principal-mapping-entries">
<principal-mapping-entries>
<principal-mapping-entry>
<initiating-user>servletuser</initiating-user>
<res-user>jmsuser</res-user>
<res-password>->jmsuser</res-password>
</principal-mapping-entry>
</principal-mapping-entries>
</security-config>
<connectionfactory-interface>javax.jms.XAQueueConnectionFactory</connectionfactory-interface>
</connector-factory>
Where do we need to change ?
Please suggest .
Thanks -
My system performance has tanked since upgrading to OS X Lion
My iMac was a beast of a machine when I was running Snow Leopard. I finally decided to upgrade to Lion and am now regretting it. Now my system freezes all the time and it takes forever to open most software apps such as FCP X, Compressor or Motion. (Native Apple products)
Once opened, the performance of the apps is horrible. Safari has also taken quite a hit in performance as well.
My system configuration:
Mac OS X Version 10.7.3
Processor 2.66 Ghz Intel Core i5
Memory 12 GB 1067 MHz DDR3
I'm not sure what to do now. Does anyone have any suggestions?I suggest booting into safe mode. If performance issues
go away, then you have some third party driver or app
being loaded at boot that is not compatible with Lion
(which is quite often the case). Then you need to start the
process of identifying the culprit.
Also, check activity monitor for for any processes that
may be using up excessive CPU.
Also, make sure you have all drivers for any devices
updated and update all software to latest versions.
Another issue is that Spotlight reindexes your hard
drives after the update which can take quite a while
depending on how big, how many, and how many
files are on them. -
Can insert performance be improved playing with env parameters?
Below is the environment confioguration and results of my bulk load insert experiments. The results are from two scenarios that is also described below. The values for the two scenarios is separated by a space.
Environment Configuration:
setTxn N
DeferredWrite Y
Sec Bulk Load Y
Post Build SecIndex Y
Sync Y
Column1 value reflects for the scenario:
Two databases
a. Database with 2,500,000 records
b. Database with 2,500,000 records
Column2 value reflects for the scenario:
Two databases
a. Database with 25,000,000 records
b. Database with 25,000,000 records
1. Is there a good documentation which describes what the environment statistics mean.
2. Looking at the statistics below, can you make any suggestions for performance improvement.
Looking at the below statistics is the:
Eviction Stats
nEvictPasses 3929 146066
nNodesSelected 309219 17351997
nNodesScanned 3150809 176816544
nNodesExplicitlyEvicted 152897 8723271
nBINsStripped 156322 8628726
requiredEvictBytes 524323 530566
CheckPoint Stats
nCheckpoints 55 1448
lastCheckpointID 55 1448
nFullINFlush 54 1024
nFullBINFlush 26 494
nDeltaINFlush 116 2661
lastCheckpointStart 0x6f/0x2334f8 0xb6a/0x82fd83
lastCheckpointEnd 0x6f/0x33c2d6 0xb6a/0x8c4a6b
endOfLog 0xb/0x6f22e 0x6f/0x75a843 0xb6a/0x23d8f
Cache Stats
nNotResident 4591918 57477898
nCacheMiss 4583077 57469807
nLogBuffers 3 3
bufferBytes 3145728 3145728
(MB) 3.00 3.00
cacheDataBytes 563450470 370211966
(MB) 537.35 353.06
adminBytes 29880 16346272
lockBytes 1113 1113
cacheTotalBytes 566596198 373357694
(MB) 540.35 356.06
Logging Stats
nFSyncs 59 1452
nFSyncRequest 59 1452
nFSyncTimeouts 0 0
nRepeatFaultReads 31513 6525958
nTempBufferForWrite 0 0
nRepeatIteratorReads 0 0
totalLogSize 1117658932 29226945317
(MB) 1065.88 27872.99
lockBytes 1113 1113Hello Linda,
I am inserting 25,000,000 records of the type:
Database 1
Key --> Data
[long,String,long] --> [{long,long}, {String}}
The secondary keys are on {long,long} and {String}
Database 2
Key --> Data
[long,Integer,long] --> [{long,long}, {Integer}}
The secondary keys are on {long,long} and {Integer}
i set the env parameters to non-transactional and setDeferredWrite(True)
using setSecondaryBulkLoad(true) and then build two Secondary indexes on {long,long} and {String} of the data portion.
private void buildSecondaryIndex(DataAccessLayer dataAccessLayer ) {
try {
SecondaryIndex<TDetailSecondaryKey, TDetailStringKey,
TDetailStringRecord> secondaryIndex =
store.getSecondaryIndex(
dataAccessLayer.getPrimaryIndex() ,
TDetailSecondaryKey.class,
SECONDARY_KEY_NAME
} catch (DatabaseException e) {
throw new RuntimeException(e);
We are inserting to 2 databases as mentioned above.
NumRecs 250,000x2 2,500,000x2 25,000,000x2
TotalTime(ms) 16877 673623 30225781
PutTime(ms) 7684 76636 1065030
BuildSec(ms) 4952 590207 29125773
Sync(ms) 4241 6780 34978Why does building secondaryIndex ( 2 secondary databases in this case) take so much longer than inserting to the primary database - 27 times longer !!!
Its hard to believe that building of the tree for secondary database takes so much longer.
Why doesnt building the tree for primary database take so long. The data in the primary database is same as its key to be able to search on these values.
Hence its surprising it takes so long
The cache stats mentioned above relate to these .
Can you try explaining this. We are trying to figure out is it worth trying to build the secondary index later for bulk loading. -
Performance/costs improvements from single SQL database to elastic scale
Hi there!
I already posted a previous question on whats the best way to setup a elastic scale architecture for our application(https://social.msdn.microsoft.com/Forums/azure/en-US/82fabac7-137b-46d6-a9f0-5e71e4bbc9eb/using-datadependent-routing-in-combination-with-membership-provider?forum=ssdsgetstarted).
The next thing we need to know before we can implement elastic scale is if this is really going to help us with our performance and costs where we experiencing problems at the moment.
Currently we have a single SQL database(p3 800 DTU's).
We have run queries against our database which can calculate the number of DTU's we need to get good performance for that database.
My questions are:
1.When we implement elastic scale, can we really improve our performance and can this lead to saving costs on SQL databases?
2. Is there maybe a way we can easily test this by running queries or setting up an environment where we can see real differences in DTU's per Shard?
Thanks!Hi Elmar,
If you're already hitting performance limits with your P3 database, other than upgrading to the
new V12 server for improved premium performance, that is the highest you can currently vertically scale. Thus, it becomes advantageous to scale out to achieve better performance.
A small caveat, my answers below are really contingent upon your workload, query patterns, and sharding scheme.
1.When we implement elastic scale, can we really improve our performance and can this lead to saving costs on SQL databases?
Absolutely. If you look at the table below, you can see the ~Cost per DTU/month. For a P3 you are paying $4.65/DTU/month. If you were to scale out, with the same number of DTUs on an S2, for example, you'd achieve an 67% savings on
cost for the same number of DTUs (800). Please keep in mind that there are feature differences between Standard and Premium SKUs as well as total size (250GB vs 500GB) - these may or may not affect your application.
**Please note that S3 above is the preview price (50% off).
2. Is there maybe a way we can easily test this by running queries or setting up an environment where we can see real differences in DTU's per Shard?
The available DTUs per shard is a constant value. In principle, 800 DTUs on one P3 database is equivalent in performance capacity of 100 DTUs on eight P1s. The test you want to perform is a comparison between your scale-up
solution versus a scale-out solution as perceived by both the database %DTUs consumed and the response time/throughput of your client application. -
B2B/JMS Performance Tuning
Hello All,
We have a use-case in which an SOAP message will be received by OSB proxy service. The 3 step process is described below:
1. OSB will extract EDIFACT message from request and write it to the SOA JMS queue IE012_IN_Queue.
2. B2B listeneing channel is configured to listen to IE012_IN_Queue and translate the EDIFACT to XML and send the translated message to another JMS queue IE012_Out_Queue.
3. BPEL process reads XML message from IE012_Out_Queue and processes it further.
Under load, we observe that this 3 step process is causing delay and processing is taking more time at one of the 3 points. We are unable to exactly say which one of the 3 steps is taking more time. Can anyone help me in this area ?
Regards
AparnaHi Aparna,
You may refer -
http://docs.oracle.com/cd/E23943_01/core.1111/e10108/b2b.htm#BGBGHAHF
Few basic recommendations -
1. Domain must be running in production mode
2. Both server and component level logging should be set to error/warning to avoid excessive logging
3. Monitor DB and make sure that SQL's are performing good (You will need AWR and ASH reports of DB for this. You may take help from any DBA in your org)
4. SOA must be running in a cluster and all the servers of the cluster must be up and running
5. Monitor the data-sources (specially SOA datasource) and make sure that enough connections are available to handle the load
6. Make sure that JTA timeout and XA transaction timeout (set in data-source) are set to a proper value (Weblogic JTA timeout< DataSource XA Transaction Timeout < DB distributed_lock_timeout)
7. It is recommended to use Exalogic and Oracle RAC DB for high volume production deployments
I believe that if all above points are taken care of then B2B should be able to process small messages (like 6KB in your case) within few milliseconds. If still you hit a performance issue then better log a SR with support and after screening your system, they may suggest more fine tuning at pain points. Remember that each and every production deployment may be unique because of the requirements and resources available so generic recommendations may not solve the issue completely and hence screening of the specific system will be required to find the pain-points.
Regards,
Anuj
Maybe you are looking for
-
External DVI monitor not working with new iMac 27"
I recently purchases a 27" iMac and i'm trying to get it working with a 3rd party DVI external monitor. I got the Apple mini display port (thunderbolt) to DVI adapter and connected everything via a new DVI-D cable. The iMac detects there is a monitor
-
COMMIT_IN_POSTING error when sending PO as PDF attachment through me23n.
I am sending PO smartform as PDF attachment which is created when print preview option is selected in ME23n . Problem is when i use CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1' EXPORTING DOCUMENT_DATA = WA_DOC_CHNG PUT_IN_OUTBOX = 'X' COMMIT_WORK
-
Apple Hardware Test software for late '07 Macbook?
Where do I get the Apple Hardware Test software for a late '07 Macbook? Original disk is long lost and it doesn't appear Apple has this up for download. The battery is not taking any charge, totally dead after 772 cycles. But don't know if its the
-
I recently had a malware infection but all traces have been removed, except in firefox. The residual effect is that when I am searching google images and right click to open an image in new tab, the new tab window is blank. I have tried running with
-
Problem with search plug-in in ver 5.9
Hello I have a problem with search plug-in when you type some key words and press search button it works fine, but if you press enter jou have following error: Whoops. Something broke. Version 5.9.6.43135 Message Invalid postback or callbac