I am developing a large scale financial application which is going to be
very intensive write-wise, and use a lot of transactions.
I can see how the the web and application servers can be scaled and load
balanced quite easily, but not the database tier.
The setups I have looked at so far seem to deal with coping with a lot
of reads, and minimal writes - this maybe because they are largely
content sites not web applications as such. So they use one Master
database which is replicated to fast memcached read-only databases and
of static content caching.
I have looked at Multi Master Replicated setups but am worried about the
lag time between replication. The integrity of the data is critical.
The only real (and deal breaking in this case) downside to Rails is the
scalability of the database for this specific appliction type. Support
for XA transactions which would allow your tables to be spread over
multiple databases and solve this. Apart from that is seems any one
database vendor can be choosen for its particular features and
approprietness for an install size/needs. In the past we have used COBRA
and Borlands MIDAS to connect our applications to the database.
I know some people are touchy about saying Rails is not Enterprise ready
Its only version 1, you wouldn’t expect it to be.
Is is likly Rails will develop in these areas? Being at only version 1
there are a number of ways Rails could go. Rails is highly suited to a
certain type of applications such as Odeo, Basecamp and CMS’s. Is this
the type of application Rails will remain suited to or will it be
developed to encompass what I call enterprise features as needed for
financial, mission critical applications.
I look forward to your thoughts.