七 31
JobConf代表一个Map/Reduce作业的配置。
JobConf是用户向Hadoop框架描述一个Map/Reduce作业如何执行的主要接口。框架会按照JobConf描述的信息忠实地去尝试完成这个作业,然而:
•一些参数可能会被管理者标记为 final,这意味它们不能被更改。
•一些作业的参数可以被直截了当地进行设置(例如: setNumReduceTasks(int)),而另一些参数则与框架或者作业的其他参数之间微妙地相互影响,并且设置起来比较复杂(例如: setNumMapTasks(int))。
通常,JobConf会指明Mapper、Combiner(如果有的话)、 Partitioner、Reducer、InputFormat和 OutputFormat的具体实现。JobConf还能指定一组输入文件 (setInputPaths(JobConf, Path…) /addInputPath(JobConf, Path)) 和(setInputPaths(JobConf, String) /addInputPaths(JobConf, String)) 以及输出文件应该写在哪儿 (setOutputPath(Path))。
JobConf可选择地对作业设置一些高级选项,例如:设置Comparator; 放到DistributedCache上的文件;中间结果或者作业输出结果是否需要压缩以及怎么压缩; 利用用户提供的脚本(setMapDebugScript(String)/setReduceDebugScript(String)) 进行调试;作业是否允许预防性(speculative)任务的执行 (setMapSpeculativeExecution(boolean))/(setReduceSpeculativeExecution(boolean)) ;每个任务最大的尝试次数 (setMaxMapAttempts(int)/setMaxReduceAttempts(int)) ;一个作业能容忍的任务失败的百分比 (setMaxMapTaskFailuresPercent(int)/setMaxReduceTaskFailuresPercent(int)) ;等等。
当然,用户能使用 set(String, String)/get(String, String) 来设置或者取得应用程序需要的任意参数。然而,DistributedCache的使用是面向大规模只读数据的。
Tags:
配置 作者:Jock
二 26
Apache中URL的Rewrite
现在讲究面向搜索引擎的开发。当我们使用jsp时,搜索引擎的收藏效果不是很好,所以我们可以转义这样的URL。比如:我们可以借助rewrite使用/blog/user/0.html来访问/blog/user/blog_show.jsp?userid=0使搜索引擎更容易搜集到我们的网站信息。具体配置很简单,介绍如下
首先:还是打开%Apache2%\conf文件夹,找到http.conf文件,搜索rewrite找到#LoadModule rewrite_module modules/mod_rewrite.so,将它前面的#去掉。
然后在你要使用的VirtualHost中加入
RewriteEngine on
#打开rewrite引擎
RewriteLog logs/rewrite.log
#rewrite日志,可选配置,建议使用
RewriteLogLevel 3
#rewrite日志等级,默认为0不记录,所以只要使用日志,就要配置,3就全记录了,可以更大但没有什么意义。
RewriteRule /blog/user/(.+)\.html$ /blog/user/blog_show.jsp?userid=$1 [PT ]
#转义的规则,使用正则表达式(我也不熟,自己去研究吧),我上面的例子是将/blog/user/*.html的URL转义成/blog/user.blog_show.jsp?userid=*。
注意后面的 PT 这是保证你这样转义之后Apache能将它转给Tomcat否则Apache会自己处理这个链接,造成什么也得不到。
注意 PT ,[R]的区别,使用 PT 在客户地址栏的显示还是*.html,如果将 PT 换成[R]则地址栏也会显示成.jsp
Tags:
apache,
配置 作者:Jock
三 29
一、struts2。
跟webwork配置基本一致,主要是struts2.properties和struts.xml 2个配置文件,我的struts2.properties如下配置:
struts2.properties 更多详细内容 »
Tags:
Hibernate,
Spring,
Struts,
配置 作者:Jock
一 29
1.安装rsync。
rsync的编译安装非常简单,只需要以下简单的几步:
[root@www rsync-2.4.6]# ./configure
[root@www rsync-2.4.6]# make
[root@www rsync-2.4.6]# make install
但是需要注意的是必须在服务器A和B上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web服务器A上运行rsync守护进程(/usr/bin/rsync –daemon),在B上定时运行客户程序来备份web服务器A上需要备份的内容。
2.配置服务器端/etc/rsyncd.conf,例如:
uid = nobody
gid = nobody
max connections = 30
timeout = 1800
#use chroot = yes
hosts allow =192.168.41.133 192.168.41.127 192.168.41.128 192.168.41.178 61.135.132.17 192.168.41.163 192.168.41.164 192.168.41.126 192.168.132.26
# hosts above abc4
syslog facility = local7
pid file = /etc/rsyncd.pid
[rsync_content]
path=/usr/local/apache/htdocs
comment = html
list = no
[rsync_keywords]
path=/usr/local/apache/htdocs/data
comment = data
read only= no
list = no
Tags:
rsync,
配置 作者:堕落天使
一 16
1.配置根Logger,其语法为:
log4j.rootLogger = [ level ] , appenderName, appenderName, …
其中,level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。 appenderName就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。
2.配置日志信息输出目的地Appender,其语法为:
log4j.appender.appenderName = fully.qualified.name.of.appender.class
log4j.appender.appenderName.option1 = value1
…
log4j.appender.appenderName.option = valueN
其中,Log4j提供的appender有以下几种:
org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
3.配置日志信息的格式(布局),其语法为:
log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
log4j.appender.appenderName.layout.option1 = value1
…
log4j.appender.appenderName.layout.option = valueN
其中,Log4j提供的layout有以下几种:
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下
%c 输出日志信息所属的类的全名
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
%F 输出日志信息所属的类的类名
%l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
%m 输出代码中指定的信息,如log(message)中的message
%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
%r 输出自应用启动到输出该日志信息所耗费的毫秒数
%t 输出产生该日志事件的线程名 更多详细内容 »
Tags:
log4j,
配置 作者:堕落天使
一 09
有待慢慢补充一些常用的
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
Tags:
web,
配置 作者:堕落天使
一 07
<Directory "/apache/htdocs">
Options Indexes FollowSymLinks MultiViews ExecCGI
把Indexes去掉
改成Options FollowSymLinks MultiViews ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Tags:
apache,
配置 作者:堕落天使
一 07
Resin2.X禁止访问目录列表的配置方法如下:
打开resin.conf文件
在<web-app>
…
</web-app>
之间加入如下配置:
<directory-servlet id='false'/>
Resin3.X禁止访问目录列表的配置方法如下:
打开resin.conf文件
< servlet servlet-name ="directory"
servlet-class ="com.caucho.servlets.DirectoryServlet" />
将此配置项注释掉:
<!–
< servlet servlet-name ="directory"
servlet-class ="com.caucho.servlets.DirectoryServlet" />
–>
Tags:
resin,
配置 作者:堕落天使
十二 18
我们建立的是tes1.jsp.com test2.jsp.com 两个虚拟主机
vi /usr/java/httpd2/conf/httpd.conf
复制如下内容到httpd.conf里
NameVirtualHost 192.168.0.1 虚拟主机建立所在的IP
<VirtualHost 199.199.0.1>
DocumentRoot /home/jsp1/ 文件所在目录
ServerName tes1.jsp.com 访问的域名
</VirtualHost>
VirtualHost 192.168.0.1>
DocumentRoot /home/jsp2/
ServerName test2.jsp.com
</VirtualHost>
vi /usr/java/resin/conf/resin.conf
查找如下代码并修改:
<host id="" root-directory=".">
<!–
– configures an explicit root web-app matching the
– webapp's ROOT
–>
<web-app id='/' document-directory="/usr/java/httpd2/htdocs"/>
</host>
<host id='tes1.jsp.com'>
<web-app id='/' document-directory="/home/jsp1"/>
</host>
<host id='tes2.jsp.com'>
<web-app id='/' document-directory="/home/jsp2"/>
</host>
保存从启apache和resin
tes1.jsp.com 和tes2.jsp.com 虚拟主机可以运行了
可以做如下测试http://localhost/caucho-status/
可以看到测试面上有
Virtual Host: tes1.jsp.com:80
Virtual Host: tes2.jsp.com:80
证明JSP虚拟主机工作很正常
Tags:
apache,
resin,
配置 作者:Jock
近期评论