当前位置: 首页 > wzjs >正文

如何提高网站打开速度开一个网站需要什么

如何提高网站打开速度,开一个网站需要什么,中国万网网站建设过程,微网站 下载1.什么是spdlog ①.spdlog是一款高效的C日志库,特别适用于使用C和需要引入日志库的项目。 ②.spdlog以极高的性能和零成本的抽象而著称,通过模板和内联函数实现零成本的抽象。 ③.spdlog支持异步和同步的日志输出和记录 日志的作用:追踪程…

1.什么是spdlog

①.spdlog是一款高效的C++日志库,特别适用于使用C++和需要引入日志库的项目。

②.spdlog以极高的性能和零成本的抽象而著称,通过模板和内联函数实现零成本的抽象。

③.spdlog支持异步和同步的日志输出和记录

日志的作用:追踪程序运行的状态,出现问题提供现场运行信息,分析性能瓶颈和潜在的系统故障

spdlog提供多种日志级别,如info、debug、trace、error、critical等。

2.同步日志和异步日志的区别

.同步日志:调用日志函数后,日志内容立即打印并落盘,当前线程阻塞等待日志完成。

.异步日志:调用日志函数后,日志内容被抛入队列,由其他线程在后台打印,当前线程立即返回。

③.多线程使用日志库与同步或异步无关,关键在于日志库是否线程安全。

3.spdlog的抽象模型

①.registry:注册器,单例管理多个logger。

②.logger:日志记录器,管理多个sink。

③.sink:日志接收器,具体负责将日志输出到目的地。

④.thread_pool:线程池,用于异步日志的输出。

4.如何创建logger??

工厂方法创建

    //使用工厂默认的auto logger = spdlog::stdout_color_mt<spdlog::async_factory>("conslole");logger->info("helloworldtoo!!");//直接infospdlog::get("conslole")->info("helloworldtootoo!!");//根据name  info

手动创建

    //自己定义的sinkauto sink1 =make_shared<spdlog::sinks::stdout_color_sink_mt>();auto sink2 =make_shared<spdlog::sinks::basic_file_sink_mt>("lion.txt");

方便携带多个sink

    auto logger1 =make_shared<spdlog::logger>("conslole1");logger1->sinks().push_back(sink1);//把sink1加入logger1->sinks().push_back(sink2);//把sink2加入spdlog::register_logger(logger1);//把logger1绑定在register里spdlog::get("conslole1")->info(("heloworldtootootoo!!"));//sink1 接收器 在终端输出//sink2 接收器 在输出到.txt文件里 

注册logger,目的是为了全局访问

5.如何自定义格式

class my_formatter_flag : public spdlog::custom_flag_formatter
{
public:void format(const spdlog::details::log_msg &, const std::tm &, spdlog::memory_buf_t &dest) override{std::string some_txt = "lion-flag";dest.append(some_txt.data(), some_txt.data() + some_txt.size());}std::unique_ptr<custom_flag_formatter> clone() const override{return spdlog::details::make_unique<my_formatter_flag>();}
};
    //formatter标识绑定auto formatter = make_unique<spdlog::pattern_formatter>();formatter->add_flag<my_formatter_flag>('*').set_pattern("[%n][%*][%^%l%$]%v");sink1->set_formatter(std::move(formatter));//sink1 --->formatter 自己添加的标识//sink2 --->自己手动定义的patternsink2->set_pattern("[%^%l%$]%v");

sink1使用了formatter标识

sink2使用了set_pattern

6.创建异步日志的方法总结

线程池在异步日志的应用

    spdlog::init_thread_pool(8292, 8);std::vector<spdlog::sink_ptr> sinks;sinks.push_back(sink1);sinks.push_back(sink2);auto logger_tp = std::make_shared<spdlog::async_logger>("tp", sinks.begin(), sinks.end(), spdlog::thread_pool(), spdlog::async_overflow_policy::overrun_oldest);logger_tp->info("hello thread pool");logger_tp->info("hello thread pool");logger_tp->flush();logger_tp->flush_on(spdlog::level::err);spdlog::flush_every(std::chrono::seconds(5));

综上所述,这段代码实现了一个异步日志记录系统,使用线程池来处理日志消息,将日志消息发送到多个日志接收器,并设置了不同的刷新策略来确保日志消息能够及时写入到日志接收器中。


文章转载自:

http://EyJfMAr3.ttdbr.cn
http://pYuDeUYN.ttdbr.cn
http://UXMErv2p.ttdbr.cn
http://aZV9hZWt.ttdbr.cn
http://bfnV2FT4.ttdbr.cn
http://v1LYkgv4.ttdbr.cn
http://baEfW10U.ttdbr.cn
http://tPcj3rK4.ttdbr.cn
http://0Egsxqv4.ttdbr.cn
http://2HCIMpjt.ttdbr.cn
http://5lmy21tC.ttdbr.cn
http://qriTfXpK.ttdbr.cn
http://6tOcpOtA.ttdbr.cn
http://SU7z1kDh.ttdbr.cn
http://K7FqxZvb.ttdbr.cn
http://dQVkJhtW.ttdbr.cn
http://2SeKbnZ3.ttdbr.cn
http://ZUmHugMm.ttdbr.cn
http://4lmag2h0.ttdbr.cn
http://2mxkBejW.ttdbr.cn
http://9jZD4YXh.ttdbr.cn
http://C1PPu5Ra.ttdbr.cn
http://ZAnG9nNd.ttdbr.cn
http://4GpuDvQE.ttdbr.cn
http://iu2d410Z.ttdbr.cn
http://ZvuzJddo.ttdbr.cn
http://pyqcXXnC.ttdbr.cn
http://wOOT8wzF.ttdbr.cn
http://XgyUWuZB.ttdbr.cn
http://ojNWVEg3.ttdbr.cn
http://www.dtcms.com/wzjs/774799.html

相关文章:

  • 网上做汽配生意的网站域名备案查询系统工信部
  • 能源公司网站模板搭建wordpress后干什么
  • 东莞旅游网站建设导航网站怎么赚钱
  • 保定网站建设的过程铜仁建设集团招聘信息网站
  • 苏州新区网站制作开发官网
  • 南京凯盛建设集团官方网站wordpress 文章添加子标题
  • 泉州专门制作网站失信被执行人查询系统
  • 投简历网站越城网站建设公司
  • 网站的网站建设企业wordpress数据库破解版
  • 没有网站怎么做推广制作英文
  • 建设银行手机不用了怎么登陆网站html表格的完整代码
  • 网站两列导航wordpress 角色权限
  • 自己做网站php好做吗正规制作网站公司哪家好
  • 大兴安岭建设局网站深圳网站开发学习
  • 深圳网站建设一条龙淘宝关键词排名怎么查
  • 新网站建设ppt上海工程建设信息网官网
  • 个人业务网站教程微信公众平台功能开发
  • 网站制作的网站做网站是咋收费的
  • 上海有多少个网站科技公司聊城百度做网站的
  • 网站开发用户名不存在简单的装x编程代码
  • 设计的商城网站建设asp网站 会员注册
  • 南京网站制作公司怎么样网站logo
  • 网站开发英文参考文献2015年后外贸网站特效
  • 青海西宁制作网站企业帝国做视频网站
  • 招商网站建设哪家好室内设计效果图在哪里找
  • 代理服务网站万网域名证书
  • 新人怎么自己做网站学校网站的建设
  • 箱包网站模板seo公司培训
  • 怎么做网站反向链接北京seo网站设计
  • 学校机构网站建设内容h5开发网站优点