我在这里找到configure ,它只是说使用指定configure的命令:
./redis-server <path>/redis.conf
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何编写配置.所以我觉得在默认配置此.但是,我仍然不明白如何设置最大内存.它只是在配置中添加这一行吗?
maxmemory 2mb
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我想知道默认内存是多少.而我想将内存设置为2GB,该怎么办?
然后,我已将此行添加到redis configure以将maxmemory设置为40GB:
maxmemory 41943040
Run Code Online (Sandbox Code Playgroud)
我在redis-cli中使用命令:
config get maxmemory
Run Code Online (Sandbox Code Playgroud)
它告诉我:
127.0.0.1:6379> config get maxmemory
1) "maxmemory"
2) "41943040"
Run Code Online (Sandbox Code Playgroud)
但是,当密钥数约为200000时,我的java程序会抛出这样的异常:
Exception in thread "Thread-228" redis.clients.jedis.exceptions.JedisDataException: OOM command not allowed when used memory > 'maxmemory'.
at redis.clients.jedis.Protocol.processError(Protocol.java:117)
at redis.clients.jedis.Protocol.process(Protocol.java:151)
at redis.clients.jedis.Protocol.read(Protocol.java:205)
at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:297)
at redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:196)
at redis.clients.jedis.Jedis.hmset(Jedis.java:644)
at cn.ict.dt2redis.analyser.AbstractAnalyser.pushOne(AbstractAnalyser.java:21)
at cn.ict.dt2redis.analyser.BatchAbstractAnalyser.run(BatchAbstractAnalyser.java:16)
at java.lang.Thread.run(Thread.java:722)
Run Code Online (Sandbox Code Playgroud)
我不知道它,我是否成功将最大内存设置为40 GB?怎么做?请详细给我一些代码.
我想知道ModelAndView和String之间的区别.
@RequestMapping(value="/")
public ModelAndView mainPage() {
return new ModelAndView("home");
}
Run Code Online (Sandbox Code Playgroud)
第二段代码是关于返回String:
@RequestMapping(value="/")
public String mainPage() {
return "home";
}
Run Code Online (Sandbox Code Playgroud) 我是码头工人的新手.我已经阅读了docker remote API中的教程.在创建容器方面.它向我展示了太多的填充物.我想知道什么等同于这个命令:
docker run -d -p 5000:5000 --restart = always --name registry registry:2.
我不知道.有人能告诉我吗?谢谢!
我使用spring mongodb到我的项目.当我插入这个类的数据时:
public class Person {
@Id
private String personId;
private String name;
private int age;
private List<String> friends;
private Date tempValue;
}
Run Code Online (Sandbox Code Playgroud)
它插入到mongodb:
{
"_id" : ObjectId("543de17f2e631eb39036e60a"),
"name" : "Johnathan",
"age" : 73,
"friends" : ["hh", "hhhh", "hoho"],
"tempValue" : ISODate("2014-10-15T02:52:47.721Z")
}
Run Code Online (Sandbox Code Playgroud)
我想将"tempIntergeValue"的字段名称更改为"temp_value",它更像是数据库名称规则.
我必须初始化一些最终变量,但这些值需要由 Spring Properties 读取
public class CrawlerClient{
@Autowired
@Qualifier("crawlerProperties")
private Properties crawlerProperties;
private Integer final maxTopic;
public static void main(String[] args) {
//initialize();
}
@PostConstruct
private void initialize(){
List<Topic> topics = topicBusiness.getAll();
List<Blogger> bloggers = bloggerBusiness.getAll();
List<Clue> clues = clueBusiness.getAll();
ClueQueue.addAll(clues);
TopicQueue.addAll(topics);
BloggerQueue.addAll(bloggers);
}
..
}
Run Code Online (Sandbox Code Playgroud)
我想初始化“maxTopic”变量,但值在属性中,所以我无法在构造中执行此操作,我该怎么做?我只知道删除“final”键。最后,我是这样做的:
final Integer maxTopic;
final Integer maxBlogger;
final Integer maxClue;
@Autowired
public CrawlerClient(@Qualifier("crawlerProperties")Properties crawlerProperties){
this.maxTopic = Integer.parseInt(crawlerProperties.getProperty("MaxTopic"));
this.maxBlogger = Integer.parseInt(crawlerProperties.getProperty("MaxBlogger"));
this.maxClue = Integer.parseInt(crawlerProperties.getProperty("MaxClue"));
}
Run Code Online (Sandbox Code Playgroud)
有人能用更好的方法解决吗?
我想在 RegExp 中使用方法“exec”。我写下面的代码来尝试做:
let result = <RegExpExecArray>{};
while (result = expressionCheck.exec(text)) {
let matchIndex = result.index;
let t = result[0].length;
matchRanges.push(new RegRange(matchIndex, t));
}
Run Code Online (Sandbox Code Playgroud)
但它会引发以下错误:
Build:Type 'RegExpExecArray | null' is not assignable to type 'RegExpExecArray'.
Run Code Online (Sandbox Code Playgroud)
我尝试将循环条件修改为:
while ((result = expressionCheck.exec(text)) != null) {
Run Code Online (Sandbox Code Playgroud)
它仍然不起作用。那么这种情况下的循环条件怎么写呢?
我使用 MAC OS X。我想在本教程中使用镜像,它的第 1 步需要这样做:
docker --registry-mirror=http://<my-docker-mirror-host> -d
Run Code Online (Sandbox Code Playgroud)
但是,当我在终端中使用此命令时,它不起作用:
提供但未定义的标志:--registry-mirror 请参阅“docker --help”。
然后,我在教程中使用另一种方式:
您可以将 --registry-mirror 选项添加到 /etc/default/docker 中的 DOCKER_OPTS 变量
我不知道在哪里添加这个 DOCKER_OPTS。我想在客户端 1.7.0 中使用镜像。谁能告诉我如何设置镜子?
我使用这个命令来创建镜像:
docker run -d -p 5000:5000 -e REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/Users/v11/Documents/docker-registry --restart=always --name mirror -e STANDALONE=false -e MIRROR_SOURCE=https://registry-1.docker.io -e MIRROR_SOURCE_INDEX=https://index.docker.io registry
Run Code Online (Sandbox Code Playgroud)
我测试了它,发现它不像它描述的那样可以从本地注册表下载。即使我没有使用这个命令:
docker push localhost:5000/batman/ubuntu
Run Code Online (Sandbox Code Playgroud)
这个命令以前可以用,真不知道怎么回事。也许标志“STANDALONE=false”会影响?我想设置镜像,谁能告诉我怎么做。谢谢。
我是java中的多线程的新手.我写了一些类来测试synchronized的函数.我有一些使用synchronized的方法:
public class ShareUtil {
private static Queue<Integer> queue = new LinkedList<Integer>();
public static synchronized void do1(){
System.out.println("do1");
sleep();
}
public static synchronized void do2(){
System.out.println("do2");
sleep();
}
private static void sleep(){
try {
Thread.sleep(1000*50000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
你可以看到有两种方法使用synchronized,我运行两个线程分别使用这两种方法.
class Run1 implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
ShareUtil.do1();
}
}
class Run2 implements Runnable{
@Override
public void run() {
// TODO Auto-generated method …Run Code Online (Sandbox Code Playgroud)