贤仁居 George Gong
It's never too late to learn
posts - 32,comments - 16,trackbacks - 0

这两天开始研究一个韩国人写的asp.net(C#)程序,好多年没玩.net了,发现很生疏。首先要把源代码在本机跑起来,安装VS2005。然后打开网站把项目到进去后,启动debug(F5)后出现问题, <add assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />这一行报错,google了一下发现必须要安装.net framework 3.5 sp1 ,如果还不行还要安装MS Chart.exe,看来这个是图形报表需要的东西。

安装完成后点击自动调试模式,还是报错,这次提示web.config里的全局路径出问题,后来仔细琢磨了一下发现VS默认启动的Development Server自作聪明的在启动的URL后面加了一个项目名称作为子路径,这个导致了很多问题,项目里定义的相对路径找不到,导致图片、JS、CSS等无法显示。好多人在骂微软的这个stupid。

google了一下解决方案,如下:点击VS上面的“工具”--->“外部工具”,然后添加一个Development Server,自己定义名称、端口号、虚拟路径、物理路径等。我的位置如下:
标题:Web Server Port:8080
命令:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE
参数:/port:8080 /path:D:\vs_workspace\ibt 这里没有定义虚拟路径,即为/
然后勾选“使用输出窗口”,这样就有打印信息了。

完成后你会发现“工具”里多了一个你定义的“Web Server Port:8080”,点击一下就启动了。

好多国内的帖子到这里后就完事了,其实不然。因为这样的话是解决了端口号和虚拟路径的问题,但我发现这时候不能debug程序了,断点没用。
国外的帖子找到了解决办法,原来还差一步,就是替换VS给项目设置的默认Development Server。在“解决方案资源管理区(solution explore)”里点击项目工程(project),右键点击并选择“属性页”,选择左边的“启动选项”,在“服务器”里选择“使用自定义服务器”,在基URL里填写“http://localhost:8080/”,这样就OK了。但跟默认有区别的是,这次VS不管自动启动Development Server,需要手动启动,然后才能点击“启动调试(F5)”按钮

posted @ 2010-01-22 10:37 George Gong 阅读(1084) | 评论 (0)编辑 收藏

由于项目中的小文件太多,都是几K的小文件,有100多G,所以必须要提升静态文件的访问速度。一开始用Nginx 与 Tomcat做集群,Nginx负责静态资源的响应。Nginx在Linux下跑的很爽,到Windows下就不太好了。Nginx前段时间推出了Windows版,拿来一试,感觉不太稳定。在一个刀片机下作测试很好,但弄到正式环境下就不行了,ext tree显示不出来,而且要等很久,最后页面提示:ext无法显示。最后跟同事商量,觉得还是apache+tomcat在windows下比较稳定,转手弄apache+tomcat。

apache官方没有提供win64版本,就找了一个外国哥们在Vistual Studio 2005 下自己编译的win64 apache,在测试机上安装很轻松,然后布了2个tomcat,又在apache的mem cache中设置了3G的内存做缓存,测试一切OK。接着弄正式服务器,第一台正式服务器很顺利,几分钟就搞定了。第二台服务器就出了问题,apache无法启动,提示:“由于应用程序配置不正确 应用程序未能启动。重新安装应用程序可能会纠正这个问题”。然后查看这两台服务器有何差异,最后发现第一台上有.net framework 2,3,3.5,第二台上一个.net framework 都没有。接着装.net framework 2.0 service,还是不行。有文章说要安装 vc redistribute 包,到微软官方下载安装,还是不行,郁闷。最后没办法,又下载安装.ner framework 3.0,还是不行,靠!这时候我都不报希望了,又下载安装.net framework 3.5,然后发现apache 可以了!最后一分钟搞定第二台服务器的apache+tomcat。

我的apache+tomcat用的是ajp proxy通信方式,设置session sticky。

好了,接下来观察几天看看效果如何

posted @ 2010-01-15 11:28 George Gong 阅读(2425) | 评论 (2)编辑 收藏

SkillSoft的Business Skills课程的Objectives数据封装方式与PagePlayer.properties的LMS_AICC_VERSION,LMS_AICC_V2_POST这两项属性值有关。
LMS_AICC_VERSION值为2.2 or 3.5,默认是3.5。当LMS_AICC_VERSION=3.5时,Objectives的Score的值以分号割开,如下:

[Objectives_status]
j_id.
1=LEADA201001005000X020001
j_status.
1=c
j_id.
17=LEADA201001003000X820001
j_score.
17=33;33;-84
j_id.
2=LEADA201001002000X020001
j_status.
2=c
j_id.
16=LEADA201001005000X820001
j_score.
16=20;20;-21
而LMS_AICC_VERSION=2.2时,数据以逗号隔开,如下:
[Objectives_status]
j_id.
1=LEADA201001005000X020001
j_status.
1=c
j_id.
17=LEADA201001003000X820001
j_score.
17=33,33,-84
j_id.
2=LEADA201001002000X020001
j_status.
2=c
j_id.
16=LEADA201001005000X820001
j_score.
16=20,20,-21

LMS_AICC_V2_POST的值为ture or false,默认为false。当LMS_AICC_V2_POST=false时,每次课程向LMS提交的数据都是最新的数据,如果学员进行了一次测试,课程的putparam提交的数据如下:
[CORE]
Lesson_Status
=Incomplete
Lesson_Location
=LEADA201001MXX999X810001
score
=12
time
=00:04:18
[Core_Lesson]
20
[Core_Vendor]
20 May 2009 07:38:48 GMT,\u9AD8 \u7EA7 \u9886 \u5BFC \u539F \u5219
[Objectives_status]
j_id.
1=LEADA201001005000X020001
j_status.
1=c
j_id.
17=LEADA201001003000X820001
j_score.17=55

j_id.
2=LEADA201001002000X020001
j_status.
2=c
j_id.
16=LEADA201001005000X820001
j_score.16=44

当LMS_AICC_V2_POST=true时,课程向LMS提交的是完整数据,如下:
[CORE]
Lesson_Status
=Incomplete
Lesson_Location
=LEADA201001MXX999X810001
score
=12
time
=00:04:18
[Core_Lesson]
20
[Core_Vendor]
20 May 2009 07:38:48 GMT,\u9AD8 \u7EA7 \u9886 \u5BFC \u539F \u5219
[Objectives_status]
j_id.
1=LEADA201001005000X020001
j_status.
1=c
j_id.
17=LEADA201001003000X820001
j_score.
17=55,33,33,-84
j_id.
2=LEADA201001002000X020001
j_status.
2=c
j_id.
16=LEADA201001005000X820001
j_score.
16=44,20,20,-21
也就是课程保留了之前LMS返回给它的数据,然后把最新的Score分数添加到原来值的前面,至于这些值是用逗号隔开还是分号隔开取决于前门的LMS_AICC_VERSION值,值为3.5时分号隔开,2.2时逗号隔开。

因为系统要用这些值统计学院的每次测试成绩,所以会注意到这些值的封装方式。如果不需要使用这些值的话,就不用管了,只接简单的存取就是了
posted @ 2009-05-20 16:36 George Gong 阅读(292) | 评论 (0)编辑 收藏
     摘要:   PagePlayer.Properties General SCP Properties PagePlayerProperties.version=7.0.1 ...  阅读全文
posted @ 2009-05-20 16:08 George Gong 阅读(590) | 评论 (0)编辑 收藏

由于项目中用到,特在此做一笔记:

       1.Tomcat为6.0.14,解压版。首先说明一点:Tomcat本身是32位的,所以64位操作系统的话要覆盖两个文件。
           到http://svn.apache.org/viewvc/tomcat/tc6.0.x/tags/TOMCAT_6_0_14/res/procrun/amd64/  下载tomcat6.exe和tomcat6w.exe两个文件。

       2.将上面下载的两个文件覆盖$TOMCAT_HOME/bin下对应的文件。

       3.命令行到$TOMCAT_HOME/bin下,运行service install命令。

       4.修改服务为自启动,OK。


      PS:


      这里有点小问题,系统中用的Java为Oracle jrockit,所以安装后的路径同SUN的Java有所不同。而$TOMCAT_HOME/bin下的service.bat显然是为SUN的Java准备的,如下:

rem Set the server jvm from JAVA_HOME
set PR_JVM=%JAVA_HOME%\jre\bin\server\jvm.dll
if exist "%PR_JVM%" goto foundJvm
rem Set the client jvm from JAVA_HOME
set PR_JVM=%JAVA_HOME%\jre\bin\client\jvm.dll
if exist "%PR_JVM%" goto foundJvm
set PR_JVM=auto
:foundJvm
echo Using JVM:              %PR_JVM%

    标红的是Sun Java的安装路径,而Jrockit为%JAVA_HOME%\jre\bin\jrockit\jvm.dll


    还有一点是:有的帖子说覆盖文件前要先运行tomcat6w.exe记录下各参数,其实完全没必要。运行server install命令后参数会自动添入。
posted @ 2009-03-31 17:32 George Gong 阅读(3450) | 评论 (2)编辑 收藏

1、使用system登录Oracle,利用dbms_xdb修改端口设置

SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081
SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get() , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()', 8081));


Call completed.
posted @ 2008-11-10 10:03 George Gong 阅读(508) | 评论 (0)编辑 收藏
链接为:http://www.zw1840.com/oracle/translation/concepts/index.htm

收藏之
posted @ 2008-01-30 17:39 George Gong 阅读(410) | 评论 (0)编辑 收藏

1.安装AS4
    
    这个不多说,安装过程没什么难度。

2.安装Oracle10g

    AS4下安装Oracle10g的文章一搜一堆,都是那几个步骤:
    
    1、检查oracle所需的RPM包是否齐全:

gcc-3.2.3-34
gcc-c++-
3.2.3-34
glibc-
2.3.2-95.20
make-
3.79.1
openmotif21-
2.1.30-8
setarch-
1.3-1
compat-db-
4.0.14-5
compat-gcc-
7.3-2.96.128
compat-gcc-c++-
7.3-2.96.128
compat-libstdc++-
7.3-2.96.128
compat-libstdc++-devel-
7.3-2.96.128

    版本问题不大,大于等于都可以,没有的在安装盘或者Down下来装上。

2、建立oracle用户及oinstall,dba用户组:

# /usr/sbin/groupadd oinstall /创建组用户/
# /usr/sbin/groupadd dba /创建组用户/
# /usr/sbin/useradd -g oinstall -G dba oracle /创建用户,并设定用户组/
# passwd oracle /设定oracle用户的密码/

3、修改oracle用户的.bash_profile文件,将oracle相关的环境变量加进去:

ORACLE_BASE=/oracle/app
ORACLE_HOME
=$ORACLE_BASE/product/10.1.0/db_1
ORACLE_SID
=demo1
PATH
=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH
=$ORACLE_HOME/lib:/usr/lib
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH


4、修改系统属性,在/etc/sysctl.conf文件中加入kernel相关的属性配置:

kernel.shmall = 2097152
kernel.shmmax 
= 2147483648
kernel.shmmni 
= 4096
kernel.sem 
= 250 32000 100 128
fs.file-max 
= 65536
net.ipv4.ip_local_port_range 
= 1024 65000
net.core.rmem_default 
= 262144
net.core.rmem_max 
= 262144
net.core.wmem_default 
= 262144
net.core.wmem_max 
= 262144

这里重要的是kernel.shmmax,这里设置的值为2G,这个值跟oracle的SGA有很大关系,很容易出错。有的文章说这个值应该设置成内存的一半。另一个是kernel.shmall,有文章说这个值应该是kernel.shmmax除以系统的PAGE_SIDE得到的商。

5、根据步骤3里的设置创建相关目录。

6、修改redhat发行标识:
由于oracle10g具有系统安装监测,当检测到的系统不符合安装配置规定的要求时,安装不能正常进行,故要更改操作系统的版本标识,这一操作不会影响任何系统问题,可以在安装结束后恢复为正常状态。
操作如下:
备份/etc/redhat-release文件为/etc/redhat-release.bak
以root权限修改/etc/redhat-release文件
将文件的内容Red Hat Enterprise Linux AS release 4 (Nahant)
修改为Red Hat Enterprise Linux AS release 3 (Taroon)
用于满足 Disk1/install/oraparam.ini的检查要求

7、开始安装
这里可能会遇到一些问题,比如X-Windows启动不起来,这时候需要运行命令:xhost+。如果IP是DHCP的话可能还需要修改local.localdomian的值。
运行oracle安装盘里的runInstaller会出现安装页面,如果是乱码的话还要设置系统的字符集。
需要运行orainstRoot.sh命令。
接下来oracle要验证安装需要的RPM包是否齐全,有的高级版本可能检验不出来。
安装最后还要执行root.sh命令。

8、DBCA建库问题
这个问题因机器而异,在我的机器上出了问题,害我折腾了两三天。在建表的时候,最后一步有SGA的设置,默认选的是内存的40%。我的机器的内存是8G,40%是3G多,这样就出问题了,开始建表操作后2%进度的时候报ORA-27123错误,说是sharedmomery问题,一开始弄的我一头雾水,找不到北。有的文章提到32位的操作系统及Oracle,SGA应该不高于1.7G,这是32位系统的上限。后来我把SGA调到小于1.7G就OK了。后来我试着更改kernel.shmmax的值,当改为4G后再运行DBCA建库,会报ORA-27101(可能是这个号),out of memory的问题,内存溢出。有文章说到应该改limits.conf设置,去掉限制。但对此我还没有进行尝试。

9、Oracle的自启动
在这个问题上我花费了不少时间,一开始在/etc/init.d/目录下建dbora启动脚本的时候有问题,系统重启的时候一会执行一会不执行。后来根据别的文章采用令一种办法:

root 登录,在  /etc/rc.d/init.d 下创建名为dbora,编辑增加以下内容

=================================================


#!/bin/bash
#参考http://staff.in2.hr/denis/oracle/10g1install_fedora3_en.html#n4_4
# chkconfig: 
35 95 1
# description: init script to start/stop oracle database 10g
, TNS listener, EMS
#

# match these values to your environment:
export ORACLE_BASE
=/u01/app/oracle
export ORACLE_HOME
=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID
=dssdb
export PATH
=/home/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_USER
=oracle

# see how we are called:
case $
1 in
    start)
    su - 
"$ORACLE_USER"<<EOO
    dbstart
EOS
    emctl start dbconsole
EOO
    
;;

    stop)
    su - 
"$ORACLE_USER"<<EOO
    dbshut
EOS
    emctl stop dbconsole
EOO
    
;;

    *)
    echo 
"Usage: $0 {start|stop}"
    
;;
esac


==========================

打开终端执行:
chown oracle.oinstall /etc/rc.d/init.d/dbora
chmod 
755 /etc/rc.d/init.d/dbora

使用chkconfig 设置运行权限
chkconfig dbora reset

检查
chkconfig --list dbora
结果如下:
ora10            
0:off   1:off   2:off    3:on    4:off    5:on    6:off

这时你可以试试手动启动及关闭oracle服务:
service dbora start
service dbora stop

总结:
现在的服务器配置越来越高,我的这台机器是dell2950,4核CPU×2,8G内存,64位。因为没有64位的redhat系统盘,只好操作系统及oracle都装的32位的,这点很不爽。所以64位的硬件最好还是装64位的系统及软件,否则硬件上会有限制,不能充分利用。

posted @ 2008-01-26 17:38 George Gong 阅读(1883) | 评论 (1)编辑 收藏

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 10.2.0.3
Linux x86

Symptoms

ORA-27102, Out of memory error


Cause

For 32 bit system running smp kernel, we cannot have SGA > 1.7 GB directly. This is because of
limitation of 32 bit systems of not being able to address memory > 4GB directly by a user process.
If SGA is kept higher than 1.7 GB, it will results in ORA 27102 errors.

While invoking dbca or creating starter database, by default it takes 40% of memory for SGA.
Hence the size can accidentally exceed 1.7 GB




Solution

The workaround is to create a new database, and specify the size of SGA approximate to be 1.5 to
1.7 GB.


References

Note 260152.1 - Summary About the Large SGA & Address Space on RH Linux

Errors

ORA-27102 out of memory

posted @ 2008-01-26 15:17 George Gong 阅读(1352) | 评论 (0)编辑 收藏
     摘要: http://www.theserverside.com/tt/articles/article.tss?l=IntrotoSpring25 October 2007                   ...  阅读全文
posted @ 2007-10-31 09:23 George Gong 阅读(1206) | 评论 (0)编辑 收藏
仅列出标题
共4页: 上一页 1 2 3 4 下一页