一种 Camunda 流程引擎 Adapter 层的实现
上一篇说明了选择 Camunda 的理由。这一篇说明如何实现适配层。
当前还没有专门写一篇对 Camunda 各个功能的详细介绍。如果要获得比较直观的感受,可以下载 Modeler 或者使用在线版的 Modeler 。
https://demo.bpmn.io/
上一篇说明了选择 Camunda 的理由。这一篇说明如何实现适配层。
当前还没有专门写一篇对 Camunda 各个功能的详细介绍。如果要获得比较直观的感受,可以下载 Modeler 或者使用在线版的 Modeler 。
https://demo.bpmn.io/
FROM centos:7
COPY ./CentOS-Base.repo /etc/yum.repo.d/CentOS-Base.repo
RUN groupadd -r redis && useradd -r -g redis redis
ENV REDIS_VERSION 5.0.3
ENV BUILD_DEPS=' \
gcc \
make \
'
ADD ./redis-${REDIS_VERSION}.tar.gz /usr/src/
RUN yum install -y ${BUILD_DEPS} \
&& mv /usr/src/redis-${REDIS_VERSION} /usr/src/redis \
&& grep -q '^#define CONFIG_DEFAULT_PROTECTED_MODE 1$' /usr/src/redis/src/server.h \
&& sed -ri 's!^(#define CONFIG_DEFAULT_PROTECTED_MODE) 1$!\1 0!' /usr/src/redis/src/server.h \
&& grep -q '^#define CONFIG_DEFAULT_PROTECTED_MODE 0$' /usr/src/redis/src/server.h \
&& make -C /usr/src/redis -j "$(nproc)" \
&& make -C /usr/src/redis install \
&& rm -r /usr/src/redis
RUN mkdir /data && chown redis:redis /data
VOLUME /data
WORKDIR /data
COPY docker-entrypoint.sh /
RUN chmod a+x /docker-entrypoint.sh
ENTRYPOINT ["/docker-entrypoint.sh"]
EXPOSE 6379
USER redis
CMD ["redis-server"]
在了解各种模式之前,要把自己代入一个基础库的开发者(库作者)的角度。
客户端: 使用库的人
主体: 实际实现功能的库类
两者都是在客户端和主体之间构建一个中间层,让客户端间接访问主体。
2019 年初我在重新设计我们组负责的流程系统时,选择了 Camunda 流程引擎,并基于该流程引擎实现了一套适配方案。以前就想做一次总结,但总拖着。
最近公司中台在做流程引擎选型,相关同事找我了解 Camunda 以及基于 Camunda 的应用方案。经过我一番说明,对方表示收获很大。我想着也是时候把这些经验写下来了。
在 Memcached 和 Redis 的比较中,总会提到它们存储字符串的区别。
Memcached 默认上限是 1MB (最大上限是 1GB),而 Redis 是 512MB 。
但是这样就够了吗?我们很自然的会对此提出一些问题。
看看源码吧。