Group Details Private

administrators

Member List

  • Linux查看进程资源占用情况
    • 根据关键字搜索应用程序 | 92090为进程ID
    ps aux | grep smart
    

    2f7d81ef-e73d-4e31-b66f-4bf56b024b8a-image.png

    • 查看进行资源占用情况
    top -p 92090
    

    3b62705d-6bb0-42e0-a210-436617835415-image.png

    posted in 博客
  • git remote操作

    1.添加远程版本库
    在bec项目目录下执行一下命令:
    git remote add baga https://gitlab.xxxx/project.git

    2.在用一下命令查看是否添加成功:
    git remote -v

    3.推送代码到远程仓库:
    git push baga

    posted in 博客
  • 容器内部文件拷贝到宿主机

    docker cp 容器id:容器内文件路径 目标路径

    posted in 博客
  • zip命令的基本使用

    zip -r dir.zip dir

    zip ana.zip anaconda-ks.cfg

    posted in 博客
  • 镜像制作
     docker save -o  要打镜像包的名称  镜像
    
    docker load -i     镜像包名
    
    docker tag node:16.14.2  **/node:16.14.2
    
    docker push **/node:16.14.2
    
    posted in 博客
  • 查看windows服务端口被占用情况
    • 列表查看端口是否被占用
    netstat -aon|findstr "17181"
    
    • 列表查看是具体是哪个进程或者程序占用了 该 端口
    tasklist|findstr "16756"
    
    posted in 博客
  • mysql 授权用户数据库权限
    GRANT all ON database.* TO 'username'@'%';
    
    flush privileges;
    
    posted in 博客
  • 面试题

    task异步用法,它和thread有什么区别?

    1.什么是thread
    当我们提及多线程的时候会想到thread和threadpool,这都是异步操作,threadpool其实就是thread的集合,具有很多优势,不过在任务多的时候全局队列会存在竞争而消耗资源。thread默认为前台线程,主程序必须等线程跑完才会关闭,而threadpool相反。
    总结:threadpool确实比thread性能优,但是两者都没有很好的api区控制,如果线程执行无响应就只能等待结束,从而诞生了task任务。
    2.什么是task
    task简单地看就是任务,那和thread有什么区别呢?Task的背后的实现也是使用了线程池线程,但它的性能优于ThreadPoll,因为它使用的不是线程池的全局队列,而是使用的本地队列,使线程之间的资源竞争减少。同时Task提供了丰富的API来管理线程、控制。但是相对前面的两种耗内存,Task依赖于CPU对于多核的CPU性能远超前两者,单核的CPU三者的性能没什么差别。

    什么是装箱和拆箱?

    装箱:从值类型接口转换到引用类型。
    拆箱:从引用类型转换到值类型。

    git 切换到一个分支的命令是什么?A分支代码合并待B分支的命令是什么?

    如何使用缓存实现API调用次数限制,阐述实现思路。

    怎么实现服务的依赖注入?服务的生存期有哪几种?

    如何实现 Web API 的授权访问?说说它的优势。

    posted in 博客
  • IQueryable和IEnumerable,IList的区别

    1.IQueryable和IEnumerable都是延时执行(Deferred Execution)的,而IList是即时执行(Eager Execution)

    2.IQueryable和IEnumerable在每次执行时都必须连接数据库读取,而IList读取一次后,以后各次都不需连接数据库。前两者很容易造成重复读取,性能低下,并且可能引发数据不一致性

    3.IQueryable和IEnumerable的区别:IEnumberalb使用的是LINQ to Object方式,它会将AsEnumerable()时对应的所有记录都先加载到内存,然后在此基础上再执行后来的Query。所以上述TestIEnumerable例子中执行的SQL是"select top(5) ...",然后在内存中选择前两条记录返回。

    4.IList(IList<T>)会立即在内存里创建持久数据,这就没有实现“延期执行(deferred execution)”,如果被加载的实体有关联实体(associations),此关联实体不会被加载(既不立即加载,也不延迟加载)。

    5.IQeurable(IQuerable<T>)不会立即在内存里创建持久数据,只有遍历它(如通过foreach)、把它转换成List等情况下才会向内存加载数据,它可以实现“延期执行”,如果当前被加载的实体有关联实体(associations),此关联实体可被接下来的访问加载。

    6.IQueryable实现了IEnumberable接口。但IEnumerable<T> 换成IQueryable<T>后速度提高很多。原因:IQueryable<T>不需要将所有数据都读取到内存

    7.IQueryable接口与IEnumberable接口的区别: IEnumerable<T> 泛型类在调用自己的SKip 和 Take 等扩展方法之前数据就已经加载在本地内存了,而IQueryable<T> 是将Skip ,take 这些方法表达式翻译成T-SQL语句之后再向SQL服务器发送命令,它并不是把所有数据都加载到内存里来才进行条件过滤。

    8.IEnumerable跑的是Linq to Object,强制从数据库中读取所有数据到内存先。

    参考:
    https://bbs.csdn.net/topics/392147930?page=1
    https://blog.csdn.net/seal203/article/details/51986118

    替代文字

    posted in 博客
  • linux防火墙设置

    1.查看防火墙状态
    查看防火墙状态 systemctl status firewalld
    开启防火墙 systemctl start firewalld
    关闭防火墙 systemctl stop firewalld
    开启防火墙 service firewalld start
    若遇到无法开启
    先用:systemctl unmask firewalld.service
    然后:systemctl start firewalld.service

    2.查看对外开放的端口状态
    查询已开放的端口(已开放的端口号集合):firewall-cmd --zone=public --list-ports
    查询已开放的端口 netstat -ntulp | grep 端口号:可以具体查看某一个端口号
    查询指定端口是否已开 firewall-cmd --query-port=666/tcp
    提示 yes,表示开启;no表示未开启。

    3.对外开发端口
    查看想开的端口是否已开:firewall-cmd --query-port=6379/tcp
    添加指定需要开放的端口:firewall-cmd --add-port=123/tcp --permanent
    重载入添加的端口:firewall-cmd --reload
    查询指定端口是否开启成功:firewall-cmd --query-port=123/tcp
    移除指定端口:firewall-cmd --permanent --remove-port=123/tcp

    posted in 博客