• 申请开通专栏

  • 简单的想法

    这个问题太难了,感觉出题的人也不会知道这个水深水浅.
    下面是自己的一些想法.

    1. 单个Server Cache 场景 - 最基本cache的功能

    • cache的读取
    • cache如果不在内容里面从数据库取,然后再放入cache
    • cache 过期,过期策略验证
    • cache的不同类型验证
    • cache 超过内容容量cache策略

    2. 分布式看 - 太难了,感觉问问题的人也不一定很懂

    首先不知道这个地方的实现,总体可能有两种情况:

    1. 都是直接访问server 的cache,remote cache做同步分发,协调用
    2. 先过remote cache,server的cache 做类似二级缓存

    但是不管怎么样如果是数据一致性,高可用的话有些事情一样都很难实现和验证,比如:

    1. 数据一致性,这个缓存数据的要和实际最新数据一致,而且一个server端的cache更新了需要广播更新所有的cache,还要保证时序性保证,先到remote cache的不代表他真的是先发生,网络,处理能力都可能有问题的,系统最后更新的表示最新的值,这个难呀
    2. 可用性,如果一个server 重启了,那么如果复制cache到这个server,性能问题 如果remote cache挂了,怎么让remote cache的数据恢复正确,和实际情况一样
    3. 如果不同server的时间都不一致,怎么保证数据一致性
    4. 如果对key加锁的化,性能如何?如果没有key的话,怎么加锁? 没有key是完全可能的,就是不在缓存里面,但是是去拿同一个东西,没法控制了?
    5. 如果server cache的内存大小都不一致,怎么保证cache内容是一样的?

    最后说这种功能,测试还是不要碰了,谁想的方案谁验证吧

  • 聊一聊职业发展 at 2018年10月12日

    问题是给多少钱?这个要求可不是不高,而是相当高

  • 我这个效果怎么样 at 2018年08月22日

    貌似winzard.pinan.com.cn这个链接报错了:@jacksonchina

  • 我这个效果怎么样 at 2018年08月21日

    antd pro的味道

  • 主要没找到python长期维护的jsonpath的包

  • 赞一个,全能呀

  • 坦白讲我觉得还是else里面要处理什么响应的验证也是在doothertask这个方法里面做 本质应该我觉得是doothertask这个业务校验不严格 以后如果其他地方调用可能会出现一样的问题

  • 那也是doothertask的问题吧 和if没什么关系吧

  • 直接在本机运行的,没有打包。maven的项目的话,直接mvn test就可以了,或者在打包的时候不忽律test,就会在打包时运行.