Я использую Ruby on Rails 3, и у меня есть монолитное приложение, которое использует пространства имен для того, чтобы «разделить» логику в этом.Примерами пространства имен являются "пользователи", "профили", "статьи", ....
. Я планирую значительно расширить это приложение новыми функциями, но те, которые в настоящее время уже реализованы, должны бытьпроблема с производительностью, если я хочу обрабатывать тысячи пользователей.
В настоящее время мне все еще нужно развернуть свое приложение, но я планирую создать веб-службы для каждого пространства имен, чтобы повысить производительность (я уже улучшил кэширование, чтобы избежать запросов к базе данных).Я знаю, что создавать веб-службы и взаимодействовать с ними - очень сильная \ трудная вещь, и на это потребуется много времени (я пытался это сделать!).
Как вы думаете,Могу ли я развернуть свое приложение с монолитной архитектурой?Если да, насколько сложно будет перейти от монолитной к распределенной архитектуре?Когда мне следует перейти на распределенную архитектуру?
PS: я, например, думаю, какие шаги сделали Facebook и Twitter, чтобы стать тем, чем они являются ...