我是一个老C /算法人员,正在首次尝试构建Web应用程序.我可以使用社区的帮助来做出正确的架构/技术堆栈决策.这是我们要做的事情:
数据有一个简单的关系模型.大多数应用程序都是简单的CRUD,具有高可用性和各种UI控件,以匹配公司遵循的相当复杂的工作流程.通常需要在一个页面中显示/编辑来自多个表格的数据 – 想想可以充分利用大型监视器(网格,拖放,数据树形显示等)的可编辑仪表板.还有一些服务器端文本处理要做,Python是公司的首选处理语言.
该公司希望尽可能使用开源,但希望获得最佳的UI控件/小部件并支付商业UI包.他们希望确保有一个规模适中的开发人员社区,他们使用所有涉及的技术,这样他们在构建应用程序后就不会找到其他人来维护/增强应用程序.将有十几个并发用户.
我在这里阅读了各种问题/答案,自己做了一些研究,并与一些构建网络应用程序的同事交谈,以便为这个应用程序决定适当的技术堆栈.这是我提出的:
> UI的Sencha ExtJS
>用于数据传输的JSON
> Django作为服务器上的Web应用程序框架
> Apache作为Web服务器
> MysqL作为RDBMS
> Linux作为操作系统
> Github用于开发存储库
>应用托管的Webfaction(完整shell访问,长期流程支持,Linux / Apache / MysqL / Django支持等)
>通过数据库中的用户名/密码进行验证
我很想通过一些有经验的人来验证这个技术堆栈.如果你已经构建了高可用性的CRUD风格的网络应用程序,请告诉我你对我的选择的看法,如果我要留下任何重要信息,请告诉我.
谢谢!
罗恩
但是当你走的时候,你会发现有些事情只是因为你的背景而感觉不对劲,或者因为它与你的堆叠的其他部分相符,并且可能找到更适合你情况的东西.
我实际上得出的结论是,现在,可用于Web堆栈的各个部分都得到了很好的发展,并且进行了很好的探索,以至于您(几乎)不会出错 – 更重要的是应用程序设计.人们往往会陷入技术决策,并且不再关注应用程序本身.