您现在的位置是:主页 > news > 宜宾做网站的公司/怎样做好竞价推广

宜宾做网站的公司/怎样做好竞价推广

admin2025/6/7 2:04:43news

简介宜宾做网站的公司,怎样做好竞价推广,亚马逊跨境电商注册,微擎可以做企业网站吗Redis 介绍 redis 这个想必大家都了解,关于redis的安装參考这里,redis使用文档參见这里,英文文档。 Redis Cclient的用法 Redis的cclient Hiredis使用比較广泛,以下主要介绍下它。 1,Hiredis的安装,配置 Hiredisclient…

宜宾做网站的公司,怎样做好竞价推广,亚马逊跨境电商注册,微擎可以做企业网站吗Redis 介绍 redis 这个想必大家都了解,关于redis的安装參考这里,redis使用文档參见这里,英文文档。 Redis Cclient的用法 Redis的cclient Hiredis使用比較广泛,以下主要介绍下它。 1,Hiredis的安装,配置 Hiredisclient…

Redis 介绍

redis 这个想必大家都了解,关于redis的安装參考这里,redis使用文档參见这里,英文文档。

Redis Cclient的用法

 Redis的cclient Hiredis使用比較广泛,以下主要介绍下它。

1,Hiredis的安装,配置

Hiredisclient 在redis解压后的deps/hiredis下有对应的文件。假设你的安装包没有对应的文件能够到这里下载。

cd deps/hiredis (下载hiredis的话 自行解压进入 解压后的文件夹)。

make

最后 把对应的文件添�到 系统文件夹下,这样系统可以搜索到。

mkdir /usr/lib/hiredis

cp libhiredis.so /usr/lib/hiredis #将动态连接库libhiredis.so至/usr/lib/hiredis

mkdir /usr/include/hiredis

cp hiredis.h /usr/include/hiredis

最后注意

须要更新一下库的cache,运行命令:sudo ldconfig /usr/lib/

由于程序启动时,会去/etc/ld.so.cache来查找所要用的库,不然会出现例如以下错误:error while loading shared libraries: libhiredis.so.0.10: cannot open shared object file: No such file or directory。 关于这些知识參考这里。

2,Cclient訪问Redis

上面的工作完毕后,就能够进行连接hiredisserver。代码例如以下(编译环境为ubuntu系统上gcc)

// redis_test.c
#include <stdio.h>
#include <string.h>
#include <hiredis.h>int main()
{redisContext *c = redisConnect("127.0.0.1", 6379);// ip portif(c->err){printf("connect error.%s", c->errstr);}else{printf("connected\n");}char *value="It's a test";redisReply *reply1 = redisCommand(c, "set key %s", value);freeReplyObject(reply1);redisReply *reply2 = redisCommand(c, "get key");printf("key:1 value:%s\n", reply2->str);freeReplyObject(reply2);redisFree(c);return 0;
}

在linux系统下 .o 就相当于windows里的obj文件  .a 是好多个.o合在一起,用于静态连接 .so 是shared object,用于动态连接的,和dll差点儿相同 。
因此说明两中编译方法:

一,採用静态链接方法

把 hiredis编译后的 libredis.a 复制到当前程序 文件夹下,运行例如以下命令:

gcc  -o test redis_test.c   libredis.a

执行程序: ./test , 能够看到成功了。

二,动态链接

运行例如以下命令:gcc  -o test redis_test.c   libredis.so (注意 使用共享库前要sudo ldconfig /usr/lib/)

执行程序: ./test , 能够看到成功了。


Redis Javaclient的用法

1,Jedis下载

Jedis 是Redis 的Javaclient,Redis中Javaclient使用的相对照较广泛,以下就介绍Java怎么链接和实验Redis.

Jedis下载地址在  这里  通过网址 https://github.com/xetorthio/jedis 下载jedis源代码。

2,编译Jedis jar 包

通过步骤1 下载下来的源代码发现没有 jar包,对于编程直接使用源代码比較麻烦,如今把源代码打包为jar文件下次用的时候能够直接使用了。

用eclipse新建一个Jedisproject把 解压后的 redis文件放在新建project的src文件夹下,发现缺失对应的Commons Pool 2.2 包,须要到这里

下载可运行文件包commons-pool2-2.2-bin.zip,解压并把commons-pool2-2.2.jar等依赖包 通过 build path 中的Add External Jars 添�

到当前的project中,最后export jar包,命名为: jedis-2.4.2.jar,能够到这里下载  http://download.csdn.net/detail/gfsfg8545/7357837 。

3,使用Jedis訪问 Redis

新建project, 在引入相关jar包后,仅仅要new一个Jedis对象,就能做redis相关操作了。来个简单的jedis实例:

package cn.daniel.test;
/*** * @author Daniel* redis java client test.* time 2014-05-16 */import java.util.List;
import java.util.Map;
import java.util.Map.Entry;import redis.clients.jedis.Jedis;
public class JredisTest {public void redisTest() {Jedis redis = new Jedis("172.16.0.126", 6379);// connect server: ip port// redis.auth("user");// string operator// set key-valueredis.set("key1", "1");redis.set("key2", "2");// mset key-valueredis.mset("key3", "3", "key4", "4");// get key-valueSystem.out.println("key:key1 value:"+redis.get("key1"));// MGET key [key ...] List<String> list = redis.mget("key1", "key2", "key3", "key4");for(String s:list) {System.out.println(s);}// hset key field valueredis.hset("website", "CSDN", "http://csdn.net/");redis.hset("website", "Daniel", "http://blog.csdn.net/daniel_ustc");// hgetAll, Get all the fields and values in the hash Map<String, String> map = redis.hgetAll("website");for(Entry<String, String> entry:map.entrySet()) {System.out.println("key: " + entry.getKey()+ " value: " + entry.getValue());}// quitredis.quit();}// redisTestpublic static void main(String[] args) {JredisTest test = new JredisTest();test.redisTest();}
}

执行上面的程序就可以訪问Redis。也能够用maven管理jar包依赖,据说比較好用。

在实际使用中,通常会採用连接池的方式,不会整个项目都使用一个Connection。jedis pool 是基于apache common pool 实现的,因此主要project中导入对应的commons-pool2包,代码例如以下:

package cn.ustc.daniel.test;
/*** @author Daniel* redis java client test.* JredisPool* time 2014-05-18 */
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;public class JedisPoolTest {private static JedisPool pool=null;/*** create pool*/private static JedisPool createJedisPool() {if(pool == null) {// 建立连接池配置參数JedisPoolConfig config = new JedisPoolConfig();//设置jedis最多连接数 config.setMaxTotal(100);// 设置最大堵塞时间,毫秒数config.setMaxWaitMillis(1000);// 设置最多空暇连接个数config.setMaxIdle(10);// 创建连接池  ip portpool = new JedisPool(config, "172.16.0.11", 6379);}return pool;}/*** 在多线程环境同步初始化*/private static synchronized void poolInit() {if (pool == null)pool=createJedisPool();}/*** 获取一个jedis 对象* * @return*/public static Jedis getJedis() {if (pool == null)poolInit();return pool.getResource();}/*** 返还一个连接*/public static void returnRes(Jedis jedis) {pool.returnResource(jedis);}// main public static void main(String[] args) {Jedis jedis = JedisPoolTest.getJedis();jedis.set("name","JedisPool");String value = jedis.get("name");JedisPoolTest.returnRes(jedis);System.out.println(value);}
}



參考资料:

http://www.cnitblog.com/yunshichen/archive/2009/08/28/61065.html

http://flyingsnail.blog.51cto.com/5341669/1371650

转载于:https://www.cnblogs.com/hrhguanli/p/4062461.html