Results 1 to 2 of 2

Thread: A question on AMD/AMI chian

  1. #1
    OrNot is offline Registered User
    Name: Bin.Li
    Organization: GE Healthcare
    Project: Enterprise solution
    Join Date
    Jun 2005
    Location
    Shanghai
    Posts
    181

    A question on AMD/AMI chian

    Hi,
    AMD/AMI chain is thought as one of the most important features of ICE. Issue 11 had one detailed samples. But I get one question , what is its advantage over single AMD or AMI? When combine AMD with AMI, we actually put two underlying queues in runtime, one for AMI and another for AMI, is it more efficient than single one? what about the overhead to transfer the items in two queues?

    Another question is : If vast of clients visit the server at the same time, the quests might pile up in the AMD internal queue, how about the AMD's underlying queue capacity ? If reach the maximum, the dispatching thread will be blocked?


    Regards
    OrNot
    ------------------------------------------
    ornot2008@yahoo.com
    --------------------------------------------

  2. #2
    benoit's Avatar
    benoit is offline ZeroC Staff
    Name: Benoit Foucher
    Organization: ZeroC, Inc.
    Project: Ice
    Join Date
    Feb 2003
    Location
    Rennes, France
    Posts
    2,196
    Hi,

    There isn't really a queue of AMD callbacks in the Ice runtime but even if there was one, queuing an object is not very expensive (at least compared to the other more expensive system calls required to send an invocation over the network).

    The advantage of AMD/AMI chaining is lower thread consumption. If you were not using AMI to make the invocation on the other peer, your server would have to wait for the response from the server thread. While the wait won't consume CPU because the thread will be put in the sleeping state, that thread can't be re-used for reading another request. So to dispatch other requests while this thread is sleeping, some other threads will be required. This wouldn't be necessary if you use AMI and AMD since once you make the AMI call you can release the server thread and later call on the AMD callback once the AMI response is received.

    Cheers,
    Benoit.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. AMD - AMI interactions
    By gesly in forum Help Center
    Replies: 14
    Last Post: 04-11-2007, 03:54 PM
  2. Asynchronous - AMI and AMD
    By mohdiarra in forum Help Center
    Replies: 10
    Last Post: 10-18-2006, 09:30 PM
  3. IceE and AMI/AMD
    By albertods in forum Help Center
    Replies: 1
    Last Post: 10-11-2006, 02:34 PM
  4. IceJ 1.2.0 AMD/AMI related question
    By alexander in forum Help Center
    Replies: 10
    Last Post: 11-20-2003, 12:52 PM
  5. AMD/AMI throughput
    By roelof in forum Help Center
    Replies: 10
    Last Post: 10-23-2003, 09:20 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •