Skip to content

Instantly share code, notes, and snippets.

congyh congyh

Block or report user

Report or block congyh

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View vs_code_sync_settings
CODE SETTINGS SYNC UPLOAD SUMMARY
Version: 3.4.0
--------------------
GitHub Token: 7509fd594a69beec7326e5e72f9b06c7173d19d1
GitHub Gist: 67acd23d2dae5c2c72fbd39f1b3182c0
GitHub Gist Type: Secret
Restarting Visual Studio Code may be required to apply color and file icon theme.
--------------------
Files Uploaded:
View shell_top.md

使用top指令查看CPU, 内存占用

先查出进程号, 然后

$ top -p <pid>

参数解释如下

View spark_structure_streaming.py
#coding:utf-8
"""
启动指令:
PYSPARK_PYTHON=python3 spark-submit \
--driver-memory 16G \
--executor-memory 20G \
--executor-cores 10 \
--num-executors 100 \
--conf spark.yarn.maxAppAttempts=4 \
View python_get_simple_module_name
# Python 获取模块简易名\(Simple name\)
使用`__file__`变量而不是`__name__`变量
## 参考链接
- [Python - get full package module name](https://stackoverflow.com/questions/11705055/python-get-full-package-module-name)
View python_catch_java_exception.md

Python-Jython捕获Java异常的方法

如果是纯Python的代码(没有Java代码调用), 可以通过以下方式进行异常捕获:

try:
    do something
except Exception as e:
    do something with e
View java_random_target_range.md

Java-Random指定范围随机数生成

构造方法

有两种:

  • new Random(): 内部采用的是System.nanoTime作为seed, 较为随机.
  • new Random(long seed): 使用指定seed, 实际上是伪随机数, 也就是多次调用产生的序列相同.

推荐采用不加参数的方法.

View gross_revenue_gross_cash_revenue.txt
广告毛收入比广告毛现金收入多了假钱记业绩消耗.
View git_migrate_repo.md

git-远程仓库迁移

为什么会有这种需求呢? 实际上还是挺常见的, 例如apache不就陆续把git仓库从自己的服务器迁移到了github服务器吗.

为了理解远程仓库迁移, 首先要理解bare repo的概念

bare repo

bare repo实际上就是远程仓库, 实际上就是不含工作区的.git目录.

View git_big_file_handle.md

git-去除提交历史中指定文件, 大文件

为什么有这种需求呢? 通常是以下两种原因导致的:

  • 有密码文件被写到较早的提交历史中了, 已经无法方便的通过reset来回滚历史;
  • 有误提交的大文件(例如二进制文件)等, 存在于git历史中会导致仓库臃肿, 加大了仓库的维护成本(存储及clone耗时等).

处理步骤

  1. 镜像远程仓库
View git_push_specified_commits.md

git-仅push部分commits的方法

步骤

  1. 新建两个分支<branch_name>_origin<branch_name>;
  2. 所有的commits都在带origin的分支上进行;
  3. 当想push的时候, 对历史的commits进行rebase + cherry-pick到<branch_name>上;
  4. 然后可以修改提交时间等.
  5. push到远程分支.
You can’t perform that action at this time.