这次做
ibm
的
portal
,算是临危受命。做了几个月的
SA
离职,留下一个功能和性能都有很多问题的项目,临时让我顶上。经过一个多月的紧张工作(经常加班,上班上不了网,也没时间上网),总算功能和性能上都能达到客户要求了。而我也由一个不懂
portal
的人,经过项目中实战,不说成为高手,一般的概念、开发、配置、优化等也都有了很多体会。
这次技术上值得推荐的就是合理的使用
ajax
,既加快了首页的
load
速度,又带来了很好的用户体验。开始首页上所有
portlet
都是串行加载,有的
portlet
比如新邮件,依赖于
mail
系统提供的接口。开始这个接口在较大压力下就出现性能瓶颈,后在我们的要求下替换了协议,性能也在
1s-2s
之间。如果采用常规的办法,加上
wps
验证、运算,显示主题、皮肤,加载所有
portlet
,响应时间肯定在
10s
以上。
我在
openfans
中使用了
ajax
,有些经验,所以决定采用异步加载:首页
load
时一些
portlet
直接显示正在
loading
的字样,在
body onload
时再使用
ajax
填充内容;使用
iframe
的
portlet
,也是
src
先指向一个静态的正在
loading
页面,
body onload
时再替换
src
到实际地址(这是
ajax
模式的一种)。这样首页登录实际上只经过
wps
内部的验证和显示,所有业务逻辑都是加载成功后再并行进行。实际表现效果就是:头上的主题很快出来,一块块区域显示正在
loading
字样,性能快的
portlet
很快出来,需要几秒的
portlet
随后出来,而不是让用户傻等
10
多
s
再一下全部显示。
使用
ajax
同时也能解决页面刷新问题和获取返回值的问题。比如前面显示新邮件的
portlet
,用户点击了一封邮件,新邮件数应该减
1
,刚点击的邮件也应该上页面上消失。原始的做法就是刷新整个页面,既加大服务器压力,又带来很差的用户体验。使用
ajax
,在点击后
1s
(或者更长,这取决于邮件系统对点击操作的响应快慢)刷新
div
的内容,用户甚至感觉不到内容已经更新。其它
portlet
也不需要重新载入,大大减轻服务器的压力。有的操作需要提交给其它系统,而且可能成功可能失败,这就需要获得返回值。如果使用普通的
form
提交,需要更新整个页面。而使用
ajax
提交,可以方便的获得其返回值,进而显示不同的提示。
另一个架构上的特点就是
portal
服务器职责单一
。开始所有的业务逻辑都是写在
portlet
里,加重了
portlet
服务器的压力。我进来后做的一个大的规划就是,把业务逻辑抽离到其它
server
上,然后通过
ajax
加载到
portlet
中。这样既可以充分利用服务器资源(新的
server
使用单独的内存空间和线程池),又使得
portal
服务器职责更单一:仅进行验证、权限控制、主题、皮肤和
portlet
的展示。
先写这么多。因为使用了
2
台
server
做集群,在分布式环境下,开发也有了更多的要求(比如
cache
),后一篇文章再细细道来。
分享到:
相关推荐
Portlet是Portal中的一个组成部分,它是一个小型的、可重用的应用组件,用于在Portal中提供特定的功能或内容。每个Portlet都负责呈现一部分信息或提供一项服务,例如新闻、天气预报或者应用程序接口等。Portlet可以...
portal配置总结.pdf
Ext js 的一个 Portal 框架Portal Portal Portal Portal Portal Portal Portal
portal配置总结[收集].pdf
总结来说,用友UAP的Portal开发是一个涵盖多层面、多层次的企业级门户解决方案,它融合了多种技术规范,提供丰富的功能和高度的灵活性,便于企业构建个性化和集成化的Web工作环境。通过深入理解和熟练运用UAP Portal...
Portal在英文中的原意是“入口”,在IT领域特指一种网络认证模式——Portal认证,通常被称为Web认证。这种认证方式通过特定的门户网站来实现用户的身份验证。当用户尝试访问互联网时,如果没有预先通过认证,设备会...
在IT领域,Portal技术是一种构建企业信息门户的重要手段,它能够集成各种信息资源,提供个性化的访问界面,实现一站式的信息获取和服务。这篇详解将带你走进Portal的世界,了解其基本概念、发布流程以及与数据库的...
Java Web Portal是一种利用Java技术构建的网络门户平台,它为用户提供了一个集成各种服务和应用的单一入口点。Portal技术允许用户个性化他们的访问经验,以及将来自不同来源的动态内容整合到一个页面上。在该文件...
OpenWRT实现Portal认证是一种网络认证方式,它涉及在OpenWRT开源路由器操作系统中配置特定软件来实现用户登录和身份验证。Portal认证通常用于无线网络环境中,使得用户在连接到无线热点时,必须通过一个登录页面输入...
因此,了解Wifidog的工作原理,并自行编写一个轻量级的WebPortal认证服务器是一个值得探索的方向。编写这样的服务器需要具备程序设计基础,熟悉HTML、CSS、以及后端开发语言(如PHP、Python或Java)。 Wifidog的...
总结来说,Oracle Portal提供了一个集中的框架,便于构建和管理企业的在线协作环境,通过灵活的权限设置、丰富的工具和直观的界面,确保了高效且安全的信息共享和协作。对于开发团队和IT管理员来说,理解和掌握...
4. 添加用户角色定义,表示一个具有相同权限用户组的集合,通过用户角色的定义,能够区分不同的用户流量,把其加之在 acl 策略上就能灵活的控制,区分不同流量的权限。 Portal 认证的报文交互过程: 1. 用户访问 ...
以下是对"4套Jquery 做的 Portal UI 例子"中可能包含的知识点的详细解释: 1. **jQuery基础**: - DOM操作:jQuery提供了方便的方法,如`$(selector)`用于选择元素,`.append()`和`.prepend()`用于添加内容,`....
总结来说,"Laravel 开发-portal" 是一种高效的方法,用于构建一个集中式的系统,它能够协调和管理多个独立的应用,通过事件驱动的方式实现数据和逻辑的共享。通过深入理解和实践 Laravel 的各种特性,我们可以创建...
#### 一、Portal认证概述 **Portal认证**,在英语中意为“入口”,在IT领域特指一种通过Web页面来验证用户身份的方式,以此实现对用户网络访问权限的控制。在采用Portal认证的网络环境中,未经认证的用户上网时会被...
WebLogic Portal 是一款强大的企业级门户解决方案,它基于Java EE标准并充分利用了Oracle Fusion Middleware的技术优势。本开发指南旨在为开发者提供一套全面的WebLogic Portal开发准则及实践方法,帮助他们构建高效...
JBoss Enterprise Portal Platform(简称 JBoss Portal)是一款开源的企业级门户平台,它提供了一个标准且开放的环境来托管和服务应用程序及信息在一个统一的Web门户界面中,同时还能发布和管理内容,并个性化用户的...
The dictionary defines a portal as a grand or imposing door or entrance; hence, that picture on the cover. In this book, you will learn why the word portal has become a major buzzword in the world of ...
SANGFOR AC v11.8 本地 Portal 服务器搭建与华为 Portal 控制器对接配置指导书 本文档主要讲述了 SANGFOR AC v11.8 本地 Portal 服务器的搭建和华为 Portal 控制器对接的配置指导书。该文档面向针对读者对象是 IT ...
H3C_Portal认证基础配置案例,原创文档。 适用于H3CV7版本的网络设备,包括交换机、路由器等。 搭建环境为HCL3.0.1,适用于刚入门的网络工程师学习参考。