Fenying
open-menu closeme
Home
Articles
Books
Projects
About Me
简体中文 English
  • A strange network issue with too many containers on one machine

    calendar Jul 7, 2024 · 3 min read · docker network  ·
    Share on: twitter facebook linkedin copy

    We have a machine for development, running more than 100 NodeJS containers, all connected to a same docker network, interconnected by container names.

    Recently, we encountered a strange problem: when the containers communicate with one another, they might sometimes report errors like getaddrinfo EAI_AGAIN, which means DNS query failed.


    Read More
  • @litert/[email protected]

    calendar Jul 6, 2024 · 1 min read · typescript redis nodejs javascript  ·
    Share on: twitter facebook linkedin copy

    @litert/redis is a Redis client library developed entirely in TypeScript, for NodeJS.

    All asynchronous operations are based on Promise, and it supports transactions and messaging.

    Features

    • Support read/write separation.
    • Support pipeline.
    • Support multi and exec.
    • Support subscribe and publish.

    Installation

    1npm install @litert/redis@^3.0.3
    

    v3.0.3 CHANGES

    Versions before v3.0.3 are marked as deprecated. Please upgrade to the latest version ASAP.

    • build(deps-dev): bump braces from 3.0.2 to 3.0.3 by @dependabot in https://github.com/litert/redis.js/pull/10
    • fix(command): return keys in HMGET command correctly by @fenying in https://github.com/litert/redis.js/pull/11
    • fix(protocol): decode “*-1” correctly by @fenying in https://github.com/litert/redis.js/pull/12
    • Feat blmove command by @yunbookf in https://github.com/litert/redis.js/pull/13

    Contributors

    • @yunbookf #13

    Read More
  • @litert/[email protected]

    calendar Jun 30, 2024 · 1 min read · typescript rpc nodejs  ·
    Share on: twitter facebook linkedin copy

    @litert/televoke is a RPC library for NodeJS, written in TypeScript.

    Installation

    1npm install @litert/televoke@^1.1.0
    

    v1.1.0 CHANGELOG

    • feat(protocol): added experimental supports for transports between worker thread.

      You can run Televoke servers in main thread or worker threads now.

    • feat(protocol): added feature flag properties for channel objects.

      Now you can detect whether the server supports push messages and binary stream transport.

    • fix(protocol): simplified the ITransporter.end method.

    • fix(decoder): should decode protocol error as special error.

    • fix(protocol): put protocol-error code in server_internal_server data.


    Read More
  • @litert/[email protected]

    calendar Jun 13, 2024 · 2 min read · typescript encodings base62x base32 javascript  ·
    Share on: twitter facebook linkedin copy

    The buffer-based encoding utility method for node.js.

    Following types of encodings are supported:

    Name Description Binary-Safe
    base64 The standard BASE64 encoding. Yes
    base64url The URL-safe BASE64 encoding. Yes
    base62x The BASE62x encoding. Yes
    base32 The standard BASE32 encoding. Yes
    hex The hexadecimal encoding. Yes
    urlencode The purely URL-safe encoding. Yes
    strict_uri The extended URL-safe encoding. No

    Encoding urlencode

    This is a real urlencode implement, it will escape all bytes as %xx format, excepting A-Z, a-z and 0-9. This is a binary-safe encoding.

    Binary-safe means it could work with binary data perfectly, without gibberish. And it’s all the same below.

    Encoding uri

    This is a simple reference of method encodeURIComponent, so it works as method encodeURIComponent does. And it’s not a binary-safe encoding.

    Encoding strict_uri

    This is based on uri, but all special chars including "-", ".", "_", "!", "*", "(", ")", "~", "'" will be escaped. However, it’s still not a binary-safe encoding.

    NOTE: The data of strict_uri encoding, could be simply decoded by function decodeURIComponent.

    Encoding base64url

    This is based on base64, while charactors "=", "+", "/" will be replaced with URL-safe charactors. This is a binary-safe encoding.

    Encoding base62x

    This is a variation of base64. And it is a binary-safe encoding.

    Installation

    1npm install @litert/encodings@^2.3.0
    

    v2.3.0 CHANGELOG

    • config(deps): updated dependencies.
    • fix(encoding): fixed decoding of the urlencode.
    • build(test): added test cases.
    • build(project): upgraded the minimum version of Node.js to v14.

    Read More
  • Rotate Windows Lock Screen Picture by Powershell

    calendar Jun 12, 2024 · 4 min read · powershell windows lock-screen background picture slideshow  ·
    Share on: twitter facebook linkedin copy

    Another strange problem in Bug 11, the “Slideshow” in the lock screen doesn’t work at all. No matter how you choose the images directory, it always shows two kinds of error messages:

    • The directory you selected cannot be used as the picture directory.
    • You need more than one picture for slideshow

    However, if you choose a single image in “Picture” mode, it can display normally.

    All right, I can’t stand M$ stupid engineers anymore, so let’s solve this problem with a Powershell script.


    Read More
    • ««
    • «
    • 1
    • 2
    • 3
    • 4
    • 5
    • »
    • »»

Fenying

Angus’ Home.
Read More

Recent Posts

  • Why not use socket.write callback in Node.js?
  • Compress virtual machine disks of Hyper-V
  • Disabling the useless features in Windows 11
  • Using private Git repository in Golang
  • Disgusting things during the integration of Apple account login
  • Use OpenCV in NodeJS
  • PKI Tutorials
  • Flush third-party ROM (EvoX) on Xiaomi 12 (cupid)

Categories

TYPESCRIPT 15 OS 6 SOFTWARE 3 CLOUD 2 DOCKER 2 SECURITY 2 GOLANG 1 WEB 1

Tags

TYPESCRIPT 13 NODEJS 12 PKI 11 SSL 11 TLS 11 OPENSSL 10 JAVASCRIPT 9 CERTIFICATES 8 X509 8 CA 7
All Tags
2FA1 ACCOUNT1 AGENT1 ALB1 ALGORITHM1 ANDROID1 APPLE1 ARCHLINUX1 AUTHENTICATION1 AWS2 BACKGROUND1 BASE322 BASE62X2 CA7 CAA1 CDN1 CERTIFICATES8 CLIENT2 CLOUDFLARE1 CLOUDFRONT1 CONNECT1 CONTEXT-MENU1 COOKIES1 CRL1 CUPID1 DATE1 DNS1 DOCKER3 EC3 ECDSA4 ED255192 EDDSA1 ELB1 ENCODINGS2 ERROR1 EXCEL1 EXPLORER1 GIT1 GOLANG1 HYPER-V2 INTERMEDIATE2 JAVASCRIPT9 LINUX2 LOCK-SCREEN1 LOGGER1 LWDFX1 MACHINE1 MENU1 MYSQL1 NETWORK3 NGINX1 NODE1 NODEJS12 OAUTH1 OPENCV1 OPENID1 OPENSSL10 OTP1 PASSWORD2 PICTURE1 PKI11 POWERSHELL1 PRIVATE1 PROTOCOL2 PROXY1 RANDOM1 REDIS2 REVOKE1 RIGHT-CLICK1 ROM1 ROOT1 RPC3 RSA4 RUSTDESK1 SAFE1 SEARCH1 SEED1 SERVER1 SLIDESHOW1 SNOWFLAKE1 SSH1 SSL11 TLS11 TYPE1 TYPESCRIPT13 UUID1 VALIDATION1 VERIFICATION1 VIRTUAL1 VIRTUAL-MACHINE1 WEBSOCKET1 WINDOWS2 WORDPRESS1 X5098 XIAOMI1
[A~Z][0~9]
Angus Fenying

Copyright  ANGUS FENYING, All Rights Reserved. Powered by Hugo, with theme Clarity.

to-top