Queue:
- NATS for messaging queue.
Database:
#!/usr/bin/env bash | |
set -e | |
error() { | |
local sourcefile=$1 | |
local lineno=$2 | |
printf "Error: ${sourcefile}:${lineno}\n\n" | |
} | |
trap 'error "${BASH_SOURCE}" "${LINENO}"' ERR |
Queue:
Database:
127.0.0.1 api.ad.xiaomi.com | |
127.0.0.1 sdkconfig.ad.xiaomi.com | |
127.0.0.1 ad.mi.com | |
127.0.0.1 ad.xiaomi.com | |
127.0.0.1 ad1.xiaomi.com | |
127.0.0.1 adv.sec.miui.com | |
127.0.0.1 test.ad.xiaomi.com | |
127.0.0.1 new.api.ad.xiaomi.com |
#!/usr/bin/env bash | |
CODENAME=buster | |
APT_MIRROR=https://mirrors.ustc.edu.cn/debian | |
cat <<EOF | tee /etc/apt/sources.list.d/zfs.list | |
deb ${APT_MIRROR} ${CODENAME}-backports main contrib | |
deb-src ${APT_MIRROR} ${CODENAME}-backports main contrib | |
EOF |
(define-record fitem (result ready mutex cond)) | |
(define future | |
(lambda (thunk) | |
(let ([item (make-fitem #f #f (make-mutex) (make-condition))]) | |
(fork-thread | |
(lambda () | |
(let ([result (thunk)]) | |
(with-mutex (fitem-mutex item) | |
(set-fitem-result! item result) |
Basic unit type:
λ> replTy "()"
() :: ()
Basic functions:
采取 RESTful 风格的 api 是否应该对结果包一层?
又是基于 HTTP 的 API 设计问题
我个人的想法是:
RESTful 和 RPC 风格各有优劣,具体场景具体分析,但是整体一致最重要,不一致的 API 始终是最糟糕的。
如果要添加错误码,错误码最好放在 HTTP 头里面,这样可以在不读取 payload 的情况下判断是否存在错误
例如:X-Error-Code: 10001
或者 X-Error-Code: OUT_OF_CREDIT
{ | |
/* Override symbols so other apps can bind */ | |
/* ~ stands for option, ^ stands for control */ | |
"~j" = "noop:"; | |
"~i" = "noop:"; | |
"~;" = "noop:"; | |
"~a" = "noop:"; | |
"~2" = "noop:"; | |
"~g" = "noop:"; | |
"~y" = "noop:"; |
*://*.cengji.com/* | |
*://*.kknews.cc/* | |
*://read01.com/* | |
*://blog.csdn.net/* | |
*://help.aliyun.com/wordpower/* | |
*://cloud.tencent.com/developer/information/* | |
*://www.liankexing.com/* |