Skip to content

Instantly share code, notes, and snippets.

View zhongl's full-sized avatar
🏋️‍♂️
Focusing

Lunfu Zhong zhongl

🏋️‍♂️
Focusing
View GitHub Profile
@zhongl
zhongl / setup.sh
Created July 16, 2021 09:52
Setup chatterbot.
# docker run --rm -it -w /usr/src/app -v $(pwd):/usr/src/app python:3.7-buster bash
python -m venv cb
source cb/bin/activate
pip install spacy==2.1.8 chatterbot==1.0.8
HTTPS_PROXY=http://host.docker.internal:1087 python -m spacy download en
@zhongl
zhongl / setup_traefik.sh
Last active January 3, 2019 06:02
Solve the CORS by traefik
#!/bin/bash
docker run -d -p 80:80 -p 8080:8080 traefik:latest --api --rest
curl -v -XPUT localhost:8080/api/providers/rest -d '
{
"frontends": {
"frontend1": {
"routes": {
"test_1": {
@zhongl
zhongl / succ.go
Last active July 9, 2017 23:25
A succ solution in Go
package main
import (
"fmt"
)
func main() {
assertEq(succ("AA"), "AB")
assertEq(succ("AZ"), "BA")
assertEq(succ("ZZ"), "AAA")
@zhongl
zhongl / ResolvingLinkes.java
Last active August 25, 2017 05:25
A solution to keep resolving links to log4j2 by using maven-shade-plugin.
abstract class ResolvingLinkes {
static {
System.out.println(org.apache.logging.log4j.core.appender.AppenderSet.class);
System.out.println(org.apache.logging.log4j.core.appender.CountingNoOpAppender.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.ColumnMapping.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.jdbc.DataSourceConnectionSource.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.jdbc.FactoryMethodConnectionSource.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.class);
// System.out.println(org.apache.logging.log4j.core.appender.db.jpa.JpaAppender.class);
@zhongl
zhongl / Main.java
Last active February 28, 2017 02:24
Get Caller Signature
import sun.misc.JavaLangAccess;
import sun.misc.SharedSecrets;
import java.util.Random;
class Main {
static final JavaLangAccess JAVA_LANG_ACCESS = SharedSecrets.getJavaLangAccess();
static final Random RANDOM = new Random();
static final ThreadLocal<String> CALLER = new ThreadLocal<String>();
#! /bin/bash
# This is a script to download easeagent-sm.jar and export JAVA_OPTS for a JVM application.
# Usage:
# source /dev/stdin <<< "$(curl -SL https://git.io/vD7Bp)"
JAR='easeagent-sm.jar'
URL="https://github.com/hexdecteam/stagemonitor/releases/download/v0.25.1-easestack/${JAR}"
DIR="${HOME}/.easestack"
function download {
@zhongl
zhongl / app.sh
Created May 4, 2015 05:43
A dropwizard application bash script.
#! /bin/bash
REGEX=''
ONE_JAR="$REGEX-*.jar"
pid() {
jps -l | awk '$2 ~ /'$REGEX'/ {print $1}'
}
run() {
@zhongl
zhongl / def_func.sh
Created February 6, 2015 08:04
Insert a func to ~/.bashrc
#! /bin/bash
sed -i '2 i func() {\n sed -i "2 i $1() {\\n $2 \\n}\\n" ~/.bashrc\n source ~/.bashrc\n}' ~/.bashrc;source ~/.bashrc
@zhongl
zhongl / forbidden.scala
Created January 30, 2015 07:01
Forbidden restarting actor without supervisor strategy
import akka.actor._
import scala.annotation._
object ForbiddenRestartInActor {
def main(args: Array[String]) {
@tailrec
def readLineThen(a: String => Unit): Unit = Console.readLine match {
case "q" => println("bye")
@zhongl
zhongl / recovery.scala
Last active August 29, 2015 14:14
A solution for actor recovering from last state
import akka.actor._
import scala.annotation._
import scala.io._
object RecoverWithState {
def main(args: Array[String]) {
@tailrec
def readLineThen(a: String => Unit): Unit = StdIn.readLine match {