Каждому правительству по Ruby

36 views
Skip to first unread message

nem...@gmail.com

unread,
Feb 2, 2012, 8:29:53 AM2/2/12
to RubyOnRails to russian
вслед за VMWare которая выбрала Ruby для своей open-source paas
платформы CloudFoundry,

правительство Великобритании стартовало бета версию своего
электронного правительства - http://gov.uk,
и всё это доступно в open-source на github - https://github.com/alphagov/
и сделано на Ruby/Rails/Sinatra

если быть точным, то альфа прототип был сделан ещё в том году:
http://puffbox.com/2011/08/11/cabinet-office-finally-confirms-alphagov-transition-to-beta/
на основании прототипа - стала разрабатываться новая версия, которая и
была открыта для доступа.


Альфа версия стоила около 250к, и была сделана за 12 недель.
http://digital.cabinetoffice.gov.uk/2011/07/29/alpha-gov-uk-wrap-up/

Текущая версия финансирована лучше:
"The Cabinet Office gave us this statement about how much cash had so
far been spent from the budget:
There are three deliverables* for the beta of gov.uk of which this
release is just the first. The overall project budget is £1.7 million.
We are currently running significantly under budget and are on
schedule."
http://www.theregister.co.uk/2012/02/01/gov_uk_single_domain_release/

При этом по планам использование opensource технологий позволит
сэкономить 50m
"The beta is currently running within its projected budget of £1.7m.
When complete, the common digital platform is expected to save £50m a
year in software licensing and other infrastructure costs when every
Whitehall department begins using it."
http://blogs.ft.com/fttechhub/2012/02/beta-gov-uk/

Архитектура показана в этой статье:
http://radar.oreilly.com/2012/01/with-govuk-british-government.html

Оттуда:

Hosting and Infrastructure:

* DNS hosted by Dyn.com
* Servers are Amazon EC2 instances running Ubuntu 10.04LTS
* Email (internal alerts) sending via Amazon SES and Gmail
* Miscellaneous file storage on Amazon S3
* Jetty application server
* Nginx, Apache and mod_passenger
* Jenkins continuous integration server
* Caching by Varnish
* Configuration management using Puppet

Front end

* Javascript uses jQuery, jQuery UI, Chosen, and a variety of
other plugins
* Gill Sans, provided by fonts.com
* Google web font loader

Languages, Frameworks and Plugins

"Most of the application code is written in Ruby, running on a mixture
of Rails and Sinatra," said Stewart. "Rails and Sinatra gave us the
right balance of productivity and clean code, and were well known to
the team we've assembled. We've used a range of gems along with these,
full details of which can be found in the Gemfiles at Github.com/
alphagov."

The router for GOV.UK is written in Scala and uses Scalatra for its
internal API, said Stewart. "The router distributes requests to the
appropriate backend apps, allowing us to keep individual apps very
focused on a particular problem without exposing that to visitors,"
said Stewart. "We did a bake-off between a ruby implementation and a
Scala implementation and were convinced that the Scala version was
better able to handle the high level of concurrency this app will
require."

Databases

* MongoDB. "We started out building everything using MySQL but
moved to MongoDB as we realised how much of our content fitted its
document-centric approach," said Stewart. "Over time we've been more
and more impressed with it and expect to increase our usage of it in
the future."
* MySQL, hosted using Amazon's RDS platform. "Some of the data we
need to store is still essentially relational and we use MySQL to
store that," said Stewart. "Amazon RDS takes away many of the scaling
and resilience concerns we had with that, without requiring changes to
our application code."
* MaPit geocoding and information service from mySociety. "MaPit
not only does conventional geocoding, " said Stewart, in terms of
determining what the given the longitude or latitude is for a
postcode, but " italso gives us details of all the local government
areas a postcode is in, which lets us point visitors to relevant local
services."

С уважением,
Илья

Oleksiy Kovyrin

unread,
Feb 2, 2012, 9:21:07 AM2/2/12
to ror...@googlegroups.com
Cloud, mongodb, scala, sinatra - ммм, классно поигрались ребята.

2012/2/2 nem...@gmail.com <nem...@gmail.com>:

> --
> --
> Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
> FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
>
>  Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> ror...@googlegroups.com
>  Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-un...@googlegroups.com
>  Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru

--
Oleksiy Kovyrin
http://kovyrin.net/

Reply all
Reply to author
Forward
0 new messages