snacktime
2006-Jul-30 20:25 UTC
[Rails] slightly OT: opinions on best webservice implementation
We have been using more and more Ror for new applications. Right now we are debating on the best way to implement some new webservices that will interact with our payment gateway. These webservices will be backend type functions. Updating customer/billing records, retrieving data, etc.. The interface for actually processing transactions won''t be changing. Ideally, the webservice will be lightweight and fast, but we also need to balance that with ease of use. Most communications between gateways like ourselves and bank networks uses a simple line format with high ascii field separators. A message starts with STX, fields separated by FS/GS and the message ends with ETX/EOT and a checksum. Very simple, fairly compact, and doesnt'' take much processing power to parse. Transactions are also fairly fast due to the low overhead. Now compare that with something like soap, which uses ungodly amounts of cpu, sends a lot more data over the wire, and is slower by a large margin. Straight xml with something like REXML is better than soap. Quite a bit faster and a lot less cpu intensive. Then there is the good old regular cgi parameters. That''s how transactions are sent to our gateway, and it works just fine for that. However since the webservices platform we are creating is new, we are looking at all of our options. So, as an end developer, what is really more important? Would you be turned off by a very simple text format for retrieving/updating data as opposed to something based on xml? Most of the webservices will be used in customer support interfaces, like updating billing information or cancelling subscriptions. So speed is important, but not as important as processing the initial credit card transaction. Would be interested in any and all feedback.
Benjamin Curtis
2006-Jul-31 13:16 UTC
[Rails] slightly OT: opinions on best webservice implementation
Being a client of CC gateways, here''s my preferred order for the options you mentioned: 1. CGI params -- dead simple to implement 2. Formatted text string -- Requires a little more squinting, but still easy 3. SOAP -- No, please no, anything but SOAP. Does that help? :) -- Benjamin Curtis http://www.bencurtis.com/ http://www.tesly.com/ -- Collaborative test case management http://www.agilewebdevelopment.com/ -- Resources for the Rails community On Jul 30, 2006, at 1:22 PM, snacktime wrote:> So, as an end developer, what is really more important? Would you be > turned off by a very simple text format for retrieving/updating data > as opposed to something based on xml? Most of the webservices will be > used in customer support interfaces, like updating billing information > or cancelling subscriptions. So speed is important, but not as > important as processing the initial credit card transaction.-------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060731/3848b68d/attachment.html