Redis基础

  1. 安装
  2. 启动
    redis-server; (默认地址127.0.0.1, port:6379)
    redis-server –port 6380(修改启动端口)
    通过初始化脚本启动:utils/redis_init_script:包含redis-server的主要配置,可以修改,也可以从后面的通过参数修噶
  3. 停止
    强制终止会导致缓存数据丢失
    redis-cli SHUTDOWN:正常关闭,首先会断开所有客户端连接,然后持久化内存中的数据到磁盘
  4. redis-cli客户端连接
    (1)redis-cli -h <ip addr> -p <port number> — 远程连接redis server
    (2)不带参数执行redis-cli, 进入交互模式,可以发多条命令
  5. redis-cli命令返回值
    (1)返回状态:set值返回ok,ping返回pong等
    (2)输入错误命令:提示 unknown command “<错误命令串>”
    (3)返回整数值:incr(返回递增键值);dbsize;
    (4)字符串回复:get — 获取key的value为字符串的值
    (5)多行字符串回复:keys * — 按照一定规则返回符合规则的键值列表
  6. 配置
    (1)可以修改redis.conf或者redis.windows.conf文件,启动的时候作为参数传入
    (2)redis server已经启动了,可以即使修改属性,如config set loglevel warning
  7. 多数据库
    select <编号> –切换到某个编号的数据库,redis不存在数据库名,不支持一个实例里面不同数据库用不同的权限,多个数据库之间没有完全隔离,所以最好不用业务来分库,可以根据不同环境分库,如开发环境,测试环境等。

Redis启动错误

D:\redis-2.8.17>redis-server.exe redis.windows.conf
[4692] 27 Nov 12:14:05.995 #
The Windows version of Redis allocates a memory mapped heap for sharing with
the forked process used for persistence operations. In order to share this
memory, Windows allocates from the system paging file a portion equal to the
size of the Redis heap. At this time there is insufficient contiguous free
space available in the system paging file for this operation (Windows error
0x5AF). To work around this you may either increase the size of the system
paging file, or decrease the size of the Redis heap with the --maxheap flag.
Sometimes a reboot will defragment the system paging file sufficiently for
this operation to complete successfully.

Please see the documentation included with the binary distributions for more
details on the --maxheap flag.

Redis can not continue. Exiting.

解决方案:redis.windows.conf中增加 maxheap 1024000000

LifeRay简介

优点:

  • 自定义布局,类似qq空间
  • 用户权限的管理,包括后台功能
  • 各种自带的集成小插件

liferay tomcat目录结构

3

 

  • data:存放数据库的地方
  • tomcat-7.0.42:内置的tomcat
  • deploy:新发布的应用程序会暂时在这个目录,然后从这个目录复制到tomcat下
  • portal-ext.properties:全局配置文件

启动liferay和要配置的环境变量:

4

 

 

门户开发的简介

门户一般包含多个栏目和多个功能的集成,在开发中分为:

  • 面向栏目开发:每个栏目就是一个模块,适合栏目是独立的大功能模块,可抽象的东西比较少的情况
  • 面向功能开发:根据站内涉及到的功能来开发,比如新闻发布,搜索等,这些功能可以被多个栏目共用
  • 面向新闻开发:就是海量新闻信息静态页面
  • 面向互动开发:活动为主,交互性
  • 面向集成开发:混合新闻,互动门户等多种门户,跨门户,互动栏目集成,比如从其他各个网站抓取相关新闻集成到相关新闻模块;第二是组件集成
    比如开发一个广告发布功能,只需要在配置文件里面配置想要的表单
    2
    组件程序可以自动读出配置属性生成页面,这样来形成组件化。

 

Openstack keystone笔记

OpenStack:一个SOA的架构,各个子项目独立提供相关的服务,互不依赖。

  • Nova提供计算服务
  • Swift提供对象存储服务
  • Glance提供镜像服务等

组件都依赖于Keystone提供3A(Account,Authentication, Authorization)服务

Keystone还对外提供服务目录(ServiceCatalog)服务,以及每个服务的地址(Openstack中称为Endpoint)。