作者 Kevin Kardasz、Vadim Kudryavtsev、Robert
Mark、Mikhail Seliverstov
麦吉尔大学的开发与校友关系部怎么样使用 PHP 和 Oracle 在网上支持多达 16
万名用户
在麦吉尔大学(位于加拿大魁北克省的蒙特利尔)的开发与校友关系部,我们正在使用行业级的 PHP 应用程序和
Oracle9i,将范围广泛的多层次服务转移到 Web 上,这些服务由 200 到 300 名受薪的和志愿的工作人员以及多达 16
万名校友和捐赠人使用。预计该程序在主要的电子广播时段每小时将会接纳数万名用户。我们利用 Oracle 功能强大的行级安全特性以及 PHP
的高性能和快速开发平台来完成这一工作。本文将探讨以下方面:
- 背景
- 我们为什么选择 PHP、Oracle9i、Apache 和 Linux
- 应用程序的结构
- 安全性
- 同步
- 学到的教训以及对开发人员的建议。
背景
我们的机构面临着很多机构所面临的问题:
- 中央数据库应用程序
- 散乱而繁琐
- 属于关键任务并且不可替代
- 难以更改或者几乎无法更改
- 依赖生产商的版本升级进行更改
- 出于安全和成本的考虑,不能访问互联网
- 大量半独立状态的辅助数据库和 Web 站点
- 与中央数据库没有充分同步
- 对于适当的安全性和升级维护而言,数量过多
- 为最终用户提供过多的 ID 和口令
- 没有遵循已确立的机构业务惯例
- 越来越多地要求
- 通过基于 Web 的 IT 工具获得机构的高效率和生产率
- 易于使用
- 在功能间同步数据
- 可伸缩性
- 灵活性
- 功能的扩展性
- 加强 IT 和一般业务惯例的应用
那么,我们正在怎么样应对这些挑战呢?
我们已经启动了安全的、基于 Web 的模块化数据库应用程序开发的第一阶段。它以 PHP 和
Oracle9i 编写而成,在替代卫星应用程序及 Web
站点之后,必将为用户提供更好的服务。它对公共数据进行同步,并在总体上以及数据方面加强最佳业务惯例的应用。
该应用程序称为
Companion,因为它增加了反向中央数据库的功能,准确地报告中心数据,并在出现新数据时将其回送。
它包含超过 100 个表,这些表被分为 6 个模块。最长的表大约有一百万行。有些表有 20 到 30
列。全部用途是由用于行级安全性的 Oracle 细粒度访问控制 (FGAC) 和虚拟专用数据库 (VPD) 构成的。
Companion 应用程序包含三个域,而且能够容纳更多的域,这些域全都安全地访问同一 PHP/Oracle
应用程序中的相同数据。这些域包括以下内容:
- 工作人员内联网
为 200 到 300
名工作人员提供的内联网,包含人们在许多工作人员内联网中可以看到的所有 Web
网站、在线文档和目录,还包含一组模块,用于完成以前由辅助应用程序所做的所有工作。工作人员的定义已经扩展为包含志愿人员(我们是非赢利组织)以及从我们单位之外挑选的员工。工作人员内联网包含创建页面、文章以及在另外两个域中产生的事件的工具。
- “会员”内联网
一个由口令保护的在线社区,用于我们所服务的多达 16 万名会员 — 这里指我们的毕业生
- 公共域
一个信息站点,链接面向公众的子网站和新闻文章。 我们为什么选择 PHP、Oracle、Apache 和 Linux
Apache 和 Linux。二者都以强健、低成本和安全性(在正确配置的情况下)而著称。除了作为数据库服务器操作系统给人留下深刻印象之外,我们还发现 Linux
的 Debian 版本(来自 http://www.debian.org/ 的 Debian 项目)特别适合作为 Web
服务器,原因在于它在开放源代码社区中具有非常高的支持率、其集成软件的高质量以及它在稳定性方面的良好声誉。
PHP。我们没有选择 Active Server
Pages、ColdFusion 和 JSP,而是选择 PHP 作为我们的 Web 服务器端脚本环境,原因在于它的速度、成本效益、大量的库文件以及比其他 Web
技术更好的自定义功能。使用 PHP 还使我们免于束缚在特定厂商的开发工具集上。通过一个由 Web
网站以及程序员论坛(提供关于怎么样处理高级故障的有用提示)组成的
如果您对本文有任何疑问或者建议,请到讨论区发表您的意见:
>>
论坛入口 <<
上一页12 3 4 5 下一页
上一篇:ORACLE PHP教程--从原型到产品的最短距离
下一篇:可扩展 可伸缩的 Oracle 与 PHP
|