• 首页
  • 关于

我自然

每月存档:8月 2009

latex文档模板

在 2009年8月26日 上公布 作者为 yankay

在之前的两个月,补充了不少排版上的知识,是时候发挥一下了。把原先写程序文档的模板加以改进。成果如下。

usepackage{graphicx}
usepackage{indentfirst}
usepackage[usenames,dvipsnames]{color}
usepackage{fancyvrb} % for verbatim
usepackage{fancyhdr}
usepackage{listings}
usepackage[sf]{titlesec}
usepackage{titletoc}
usepackage[boldfont,slantfont,CJKnumber]{xeCJK}
usepackage{xcolor} % 使用颜色宏包
usepackage{color}
usepackage{amsmath, amsfonts, epsfig, xspace}
usepackage{algorithm,algorithmic}
usepackage[normal,tight,center]{subfigure}
usepackage{graphicx}
usepackage{booktabs}
usepackage{longtable}
usepackage{array}
usepackage{multicol}
usepackage{colortbl}

definecolor{steelblue}{rgb}{.275,.51,.71}
definecolor{lpink}{rgb}{.991,.711,.754}
definecolor{mygray}{gray}{0.92}
definecolor{darkblue}{rgb}{0,0,.5}
definecolor{darkgreen}{rgb}{0,.39,0}
definecolor{hgray}{gray}{.5}
definecolor{lgray}{gray}{.8}

usepackage[colorlinks=true,urlcolor=blue,linkcolor=blue]{hyperref} % for links and anchors

setCJKmainfont[BoldFont=Adobe Heiti Std]{Adobe Song Std} % 设置默认的中文字体
setCJKfamilyfont{kai}{Adobe Kaiti Std}

newcommand{kai}{CJKfamily{kai}}
newcommand{sectionname}{第CJKnumber{thesection}章}
newcommand{myheader}[1]{textcolor{darkblue}{#1}}

defprojectName{Enhance2web20}
renewcommandcontentsname{目录}

special{ pdf: bgcolor [ 1.00 0.98 0.95 ] }

linespread{1.382}

pagestyle{fancy}

makeatletter
  fancyhf{}
  lhead{textcolor{hgray}@title}
  rhead{textcolor{hgray}leftmark}
makeatother

makeatletter
renewcommand{maketitle}{
begin{titlepage}%
letfootnotesizesmall
    letfootnoterulerelax
    parindent z@
    reset@font
    vskip 10p@
    hbox{mbox{%
        hspace{4pt}%
        fbox{includegraphics[width=6em]{../logo.png}}%
        hspace{4pt}
        }%
     vrule depth 0.8textheight%
     mbox{hspace{2em}}
     vtop{% %%%%%%%%%%%%%%%%%%
        vskip 40p@
        begin{flushleft}
          Large projectName par
        end{flushleft}
        vskip 80p@
        begin{flushleft}
        textcolor{steelblue}{ fontsize{36}{20pt} bfseries kai @title }par
        end{flushleft}

      }
     }
     rightline{By @author}

  end{titlepage}%
}

makeatother

titleformat{section}[hang]{LARGEsfkai}
            {myheadersectionname}
            {1em}
            {myheader}[color{steelblue}{titlerule}]

titleformat{subsection}[hang]{Largesfkai}
            {myheaderthesubsection}
            {1em}
            {myheader}
titleformat{subsubsection}[hang]{largesfkai}
            {myheaderthesubsubsection}
            {1em}
            {myheader}

titlecontents{section}
              [2em]{largesfkaiaddvspace{-0.1em}}
              {thecontentslabelquad}
%%            {hspace*{-2.3em}}
              {}
              {titlerule*[0.8pc]{.}contentspage}
titlecontents{subsection}
              [4em]{smalladdvspace{-0.2em}}
              {thecontentslabelquad}
%%            {hspace*{-2.3em}}
              {}
              {titlerule*[0.8pc]{.}contentspage}
titlecontents{subsubsection}
              [6em]{smalladdvspace{-0.2em}}
              {thecontentslabelquad}
%%            {hspace*{-2.3em}}
              {}
              {titlerule*[0.8pc]{.}contentspage}

lstset{
keywordstyle=color{blue!70}, commentstyle=color{red!50!green!50!blue!50},
frame=shadowbox,
rulesepcolor=color{red!20!green!20!blue!20}
}
lstset{breaklines}%这条命令可以让LaTeX自动将长的代码行换行排版
lstset{extendedchars=false}

% lstset{ xleftmargin=2em,xrightmargin=2em, aboveskip=1em}

只要把最上面的代码,保存成J_sty_zh.tex,再你的代码中input进去就好了。示例如下:

documentclass[12pt,a4paper,titlepage]{article}
input{J_sty_zh.tex}%% 关键
title{架构说明书}
author{htmladdnormallink{tt Jerry Mouse}{http://jerrymouse.org.cn/}}
date{today}
begin{document}
maketitle
tableofcontents
clearpage
section{引言}
subsection{编写目的}
XXX
end{document}
文章分类 未分类 | 发表评论 |

Gae进阶和优化

在 2009年8月7日 上公布 作者为 yankay

俺炒作Gae已经很长时间的,却纠缠于细节,没有能很好的研究。自从eclipse之后我就对“云”耿耿于怀,遂看了一些资料。写个总结帖子。

云计算是什么,我又该重点炒作哪些内容?

记得院杯初赛的时候,郑淘同志向我逼问“云计算是个啥子嘛”,我回答到了“分布式”之后便无言以对,他便说“漂移”是云的精妙所在,我豁然没开朗。一万个听众心中,有一万个春哥。云计算知识用来被炒作的寂寞罢了。目前有两类很主流的云计算服务。

  • 一类是 Amazon S3(提供云存储),Amazon ec2(提供云计算服务)。S3用分布式文件系统实现,ec2则是用类似Xen的虚拟化来提供可伸缩的计算服务。两者商业应用很成功。
  • 另一种是Gae,同时提供 云存储和云计算服务。不同于前者,他使用MapReduce算法来提供可伸缩性。MapReduce算法说白了,在带宽比计算能力值钱,就是把任务切割为几块,到各自的机器上去跑,在合并起来。 与普通分布式不同的是每台机器上都有“数据库”,而不是普通系统中的只有专门的数据库服务器。Google其实拥有大量的底配置机器(和我们的PC差不多),和少量大机器完成管理工作,提供了无与伦比的计算能力。但Gae商业应用目前很不成功。原因在于Gae程序的迁移问题(其实也有方案的,下面会介绍),更多人愿意选择Amazon。

唠唠叨叨了半天,大概解释如下:云计算提供一个分布式的存储系统(Amazon S3 or BigTable),还有“云的运算”这不是重点。因为计算能力是最不值钱的。换句话说云计算相对于分布式,和春哥相对于李宇春一样。都是前者更为“性感”一些。而我就是要炒作“纯爷们”这个特点,并告诉大家信他得永生。也可以说云计算是把分布式推向大众的一个口号罢了。详细一点,我的炒点是 如何使程序适应云计算的环境。

如何让程序适应Gae?

不管是Gae还是Amazon都提供了一套API。你甚至能把普通的程序完全迁移过去,为什么要适应?

颠覆的数据库理论。什么一二三范式,什么数据库的良好实践,什么XXX。在这么都没应用无效。我们要换一种眼光来看待。这个要谈谈GaeVfs说起,这个是分布式文件系统,你可以大概理解为索引放在一台机器上,数据分散着。计算要跟着数据跑,所以数据表的粒度要大,一次要能取出全部数据,不要怕冗余,冗余是应该的。比方说,我建个人人网,我把某个人的全部数据包括日志啥的建成一个表,新鲜事也建成一个表,用户刷主页和新鲜事都只要刷一次表,速度极快。这才是我认为的最佳实践。有些人(大概就是作这个的工程师)总结的一下使用BigTable的要点,罗列如下。

  • 假定数据访问是较慢的随机访问而非较快的连续访问。
  • 为并发读取对数据进行分组
  • 磁盘和CPU都很便宜,不要再为它们操心,尽力提高可伸缩性吧
  • 围绕数据的用途来决定数据的结构
  • 创建大型的实体,允许可选的字段
  • 在模型中定义Schema
  • 用Ajax隐藏更新操作。
  • Put是昂贵的
  • 按显式费用模型设计
  • 将many-to-many关系包含到实体中,但减少关联元素的数量
  • 避免无限制条件的查询
  • 避免出现对数据存储实体的争用
  • 避免庞大的实体组

数据库设计完了,那么其他可以用领域模型设计,注意粒度放细便于Gae切割任务。

还有一点,很重要,缓存。是的,分布式缓存。很明确,Gae使用Memcached接口来缓存。缓存实现原理应该和GaeVfs差不多。注意点也差不多。Restful应用对于缓存来说是个不错的实践。

其他相关项目

我不得不提几个项目:

Hadoop,可以理解为Gae的一个Apache的实现,可以跑在普通机器上。跑在Amazon上可以实现类似Gae的效果。

Appscale,提供Gae程序到Hadoop的迁移。

Gaeo是前朝人的项目,想法和我们的GaeS如出一辙,只是他的语言的Python,我们是Java,相信我们可以借鉴不少东西。

文章分类 未分类 | 发表评论 |

Maven中多模块项目的Site生成

在 2009年8月6日 上公布 作者为 yankay

疲累不堪的我一定不能在写完之前倒下。

Maven生成站点大家都会。mvn site,mvn site-deploy。不管是单模块,多模块一切OK。可是如果不凑巧,你如果为一个子项目专门 配置了 site.xml ,

当你在父项目目录下运行mvn site-deploy时,很遗憾,他会一点作用都没有,使用的是 父项目 site.xml

当你进入子项目目录,运行 mvn site-deploy,一切OK。

于是这五个小时我被折磨的蛋疼,学习的大量的Maven知识,实验的数百次(运行了一下history,发现其实只有73次)。于是倒下了。

在昏死中,我想起来了,site.xml支持继承,而如果要编写一个支持继承的插件,最起码的要求就是在运行父子项目的时候必须运行的是同一个插件。那么 解决方案如下:

在父项目的 pluginManagement 中明确 使用 maven-site-plugin。而在每一个项目中都明确使用 maven-site-plugin

代码如下:父项目pom.xml:





org.apache.maven.plugins
maven-site-plugin
2.0





org.apache.maven.plugins
maven-site-plugin



子项目pom.xml:





org.apache.maven.plugins
maven-site-plugin



解决之,终得眠

文章分类 未分类 | 发表评论 |

Latex排版模板

在 2009年8月5日 上公布 作者为 yankay

Latex排版不短时间了,配置已经不是问题。问题是美观,我想作一个新的文档模板。

侯先生这本《Word排版艺术》告诉我,据他多年排版的经验,正文可用9.5磅字(比五号字略小),字体是华康简宋(实践证明,这会使字体间距不一,还是Adobe无敌),行距16磅(或18磅),段前4磅,段后 8磅。这样排出来的正文很均匀美观,没有常见的那种挤成一团的感觉,可直接付印。

下面是来自法国的一些latex模板,我想会很有帮助。

封面模板

chapter模板

section模板
再推荐一个不错的Latex学习站点吧。里面也有一些更酷的模板。

看了这么多,发现关于Latex排版美化的网站大多都是法国的,法国真是个足够浪漫的地方。

文章分类 未分类 | 发表评论 |

GaeVfs 我又失败了

在 2009年8月5日 上公布 作者为 yankay

操作系统没白上,我知道了 Vfs 是啥(虚拟文件系统)。希望能显示文件夹,试了一整天,从单纯实验,到编辑依赖,到修改源码。无所不用其极,最后失败放弃了。

我又一次感到了这个项目的重要性。希望如果我把GaeS完成,再来作这个的时候,会比较轻松一点。

文章分类 未分类 | 发表评论 |

睡不着

在 2009年8月2日 上公布 作者为 yankay

今天睡不着,但又很困。起来看看书,看不下去了再玩玩电脑。

也是放荡了一个月,什么也没干。二玉哥的项目,中科杯的项目,院杯都是要紧的事情。acm拖欠好多的题目没有交。20号之前又要考驾照去不了学校,还想和两个徐足球去华西村。事情好多,我还闲的慌。向往古人那闲散的日子,想犬夜叉里的村民一样的生活。
而我有陷入了沉思,我为什么要这样做,是不是太执着了一些。或许我该多外出,或许该联系联系思念的人,或许该减减肥。算了还是看书吧,已经陷入了,那么拔出了也是一种执着。

文章分类 未分类 | 发表评论 |

近期文章

  • 听说 Docker 被 kubenetes 抛弃了,怎么办?containerd
  • 公告 – 博客重开了
  • CloudFoundry v2面面谈,内赠MicroCFv2福利
  • Docker能够运行任何应用的“PaaS”云
  • Scala Tour – 精选

近期评论

  • Gao发表在《公告 – 博客重开了》
  • Impala:新一代开源大数据分析引擎 – FIXBBS发表在《Google Dremel 原理 – 如何能3秒分析1PB》
  • 何建兵发表在《NoSQL数据库笔谈v0.2》
  • Pony发表在《Docker能够运行任何应用的“PaaS”云》
  • Pony发表在《Docker能够运行任何应用的“PaaS”云》

归档

  • 2021年6月
  • 2021年3月
  • 2014年2月
  • 2013年9月
  • 2013年5月
  • 2013年1月
  • 2012年11月
  • 2012年9月
  • 2012年8月
  • 2012年3月
  • 2012年2月
  • 2012年1月
  • 2011年11月
  • 2011年10月
  • 2011年9月
  • 2010年10月
  • 2010年8月
  • 2010年7月
  • 2010年6月
  • 2010年5月
  • 2010年4月
  • 2010年3月
  • 2010年2月
  • 2010年1月
  • 2009年10月
  • 2009年9月
  • 2009年8月
  • 2009年7月
  • 2009年6月
  • 2008年10月
  • 2008年8月
  • 2008年7月
  • 2008年6月

分类

  • 家庭生活
  • 未分类
  • 每日心得
  • 软件技术

友情链接

  • DaoCloud Enterprise
  • DaoCloud 云原生一体机

CyberChimps WordPress Themes

沪ICP备2021008917号-1 © 颜开