问题标签 [three-tier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - Linq to Entities - 向下钻取过滤器 (Asp.net)
我一直在寻找一种在 linq 的实体集合上执行多个“where”过滤器的好方法。有很多网站在侧面使用过滤器进行搜索,例如 ebay。
使用的技术称为“向下钻取”过滤器。现在,我正在尝试在我的 3 层模型中使用 Linq-to-Entities 找到实现此技术的正确方法。
该技术使用较早使用的接收实体集合并使用某种过滤器将其缩小,但是即使在相同的过滤“类别”中也可以应用和删除多个过滤器。
希望有人找到我正确的教程链接或如何以正确的方式使用它的方法。
c# - 实体管理器:3 层/层应用问题
我正在尝试创建一个简单的三层项目,并且正在实施业务逻辑层,现在,这就是我的 BL 的样子
您可能会注意到,我的对象管理器实际上只是我的真实对象(客户)的容器,这是我放置业务逻辑的地方,一种将业务实体与业务逻辑解耦的方式,这就是我通常使用它的方式
如您所见,它一次只包含 1 个对象,如果我需要管理客户列表,我可能必须创建另一个经理,例如CustomerListManager
我的问题是,这是实现三层/层设计的 BL 的正确方法吗?或有关如何实施它的任何建议。谢谢。
asp.net - 我可以说 MVP = 3 Tier Archi 吗?
从最近几天开始,我一直在为我的新 Web 应用程序搜索最佳架构,该应用程序将使用 C# 在 ASP.Net 中开发。到目前为止,我只找到并研究以下 3
- 三层架构(注:层是指逻辑层)
- 模型视图控制器 (MVC)
- 模型视图演示器 (MVP)
下面是我的问题:
1) 据我了解 3 层架构和 MVP,我可以说 MVP 和 3 层是一回事吗?如果不是,那么两者之间有什么区别?(注意:我只发现 MVC 和 MVP 或 MVC 和 3 Tier Archi 之间的区别,但没有人解决 MVP 和 3 Tier Archi 之间的区别)
2)我只发现了以上三个架构选项,还有其他可用的选项吗?(注意:这里我只想要 Web 应用程序整体架构的选项,如上面 3 所示)
flash - Flash App 从应用服务器加载 crossdomain.xml 失败?
概述
我正在使用三层架构编写一个 Web 应用程序。我有三台 Amazon EC2 ubuntu 服务器。第一个服务器处理应用程序的演示,并包含我的主闪存文件。第二个 EC2 实例代表我的应用程序服务器。它包含 AMFPHP 文件和相应的 Web 服务。最后,第三个实例处理持久性并运行 MySQL 数据库。演示和应用_服务器正在运行 apache Web 服务器。我创建了特定于每一层的安全组,以便表示层将接受端口 80 上的所有传入流量,而应用程序层将只接受来自表示服务器的传入流量。这应该允许任何人从演示服务器请求我的 Web 应用程序,但阻止任何人访问我的应用程序服务器上的 Web 服务。
问题
我的 Flash 应用程序无法对我的应用程序服务器进行 Web 服务调用。发送请求时,我从未收到来自服务器的响应并最终收到安全沙箱错误。
例子:
调查
没有收到响应似乎很奇怪,所以我决定尝试以下几件事: 1. 我通过 ssh 连接到我的表示层并尝试使用 lynx 连接到我的应用程序服务器的 gateway.php。我能够毫无问题地连接。2. 我在加载我的网站时使用 Chrome 的开发者工具窗口来观察网络流量。我发现它正在尝试使用 GET 请求加载 crossdomain.xml 文件(位于应用程序层上我的 Web 服务器的根目录 [/var/www] 中);但奇怪的是,它超时并失败。这就是我感到困惑的地方。为什么我可以在同一台机器上使用 lynx 连接到应用层的 Web 服务器,但 flash 应用程序却无法访问同一个文件?
其他有用信息
在运行一些测试时,我决定打开应用程序服务器实例的防火墙,以便它可以接收来自我的 IP 的 http 请求。一旦我这样做了,托管在表示层上的应用程序立即开始工作(收到来自 Web 服务的响应)!但是,这意味着我必须强制我的应用程序层接受来自 Internet 的 http 请求才能工作,这不是我想做的事情。我不明白为什么进行此更改会允许应用程序获取 crossdomain.xml 文件。如果应用服务器的安全组被设置为接受来自表示安全组的传入http请求,那么获取驻留在应用服务器的Web服务器根目录中的crossdomain.xml文件应该没有问题吧?
我花了比我想研究这个问题更多的时间。我真的很想为我的应用程序设置一个三层环境,其中 Flash 应用程序将能够向我的应用程序层发送 Web 服务请求。最令人困惑的部分是,当我将计算机的 IP 地址添加到应用程序服务器的防火墙时,一切似乎都按预期神奇地工作了。如果我以错误的方式设置我的应用程序,请纠正我。我的架构基于以下内容:http: //media.amazonwebservices.com/AWS_Web_Hosting_Best_Practices.pdf
谢谢你的帮助!
问候,
将要
asp.net - c#中三层架构中的Web服务在哪里
三层架构中的 Web 服务通常在哪里?添加新图层有哪些规范?
lucene - Lucene 索引在哪一层?
在描述具有三层架构的系统时,Lucene 将属于业务逻辑层还是数据层?
api - 如果 Web 应用程序除了提供用户界面 (GUI) 之外还提供 API,那么 API com 位于哪一层
我开发了一个 Web 应用程序,它有一个 GUI(表示层)、用于处理数据的 Servlet 类(业务逻辑层)和一个 RDBMS(数据层)。现在我的应用程序还为其某些功能提供了一个 API,所以当我表示架构时,API b 是业务逻辑还是表示层的一部分?
wcf - WCF——有多少方法太多了?
我目前正在开发一个设计为三层架构的应用程序。它由一个管理网站、一个 WCF Web 服务和一个数据库组成。当然,网站并不直接连接数据库,所以所有的请求和响应都必须通过服务。“问题”是这个应用程序涉及多个实体,对于每个实体,我必须支持基本的 CRUD 操作等等,这使得该服务现在在单个端点中有 30 多个方法。由于我已经不得不增加最大消息大小,我开始问自己是否将所有这些方法都放在一个服务中是不是太多了。你怎么看?我有什么选择?
gwt - GWT 三层架构
我正在使用 JPA 作为数据访问层开发基于 GWT 的应用程序。我的应用程序需要支持三层架构。主要思想是拥有具有静态内容(html/javascript 等)的HTTP 服务器(Apache) 、具有业务逻辑(servlet、bean 等)的Web 应用程序服务器(Glassfish)和数据库服务器(PostgreSQL)。
有没有简单的方法来划分为简单的 GWT 应用程序生成的 war 文件的内容以实现描述的架构?
也许有一个 Maven 插件可以帮助创建具有静态内容和业务逻辑的单独的战争文件。
我还在考虑创建代理来拦截 GWT-RPC 调用并在远程服务器上调用业务方法。
我发现描述这种解决方案的非常有趣的文章(全文),但它需要大量的工作才能实现我的目标。希望有一个库或工具包可以简化代理生成过程。
任何想法将不胜感激。
asp.net-mvc - 从服务返回到 ASP MVC Web 应用程序的内容是什么?
现在,我有一个 ASP MVC Web 应用程序以及一个模型项目、一个服务项目、一个实用程序项目和一些用作一个或多个域模型的存储库的数据存储项目。我对每一层的分离感到非常满意,但我被困在从服务层返回到 Web 应用程序的内容上。
例如,当用户尝试注册时,控制器会收到一个 RegisterViewModel。各个部分(电子邮件、密码等)被发送到服务层,该服务层使用 guid、状态、createdate 等构造成员域对象,将其发送到存储库进行存储,最后返回成员对象以供 Web 应用程序重定向到/会员/{guid}。
但是,如果电子邮件已经存在,服务层应该如何通知 Web 应用程序呢?在更复杂的情况下,我可能必须检查多个域对象和业务规则的存在/有效性,因此必须一次性返回多个错误。此外,我不希望异常冒泡到 Web 层,因此服务层会捕获所有异常,但需要以某种方式通知 Web 层。
即使我找到了返回所有这些的方法,Web 层也会有负担处理所有这些并为用户提供各种反馈。控制器代码会很庞大并且错误修剪。演示文稿的服务结果是否有最佳实践?我应该消除单独的服务层并将代码放在控制器中吗?欢迎任何想法。