标签归档:代码

RSS feed of 代码

最后更新于 .

相信对于这个标题,用过lisp的朋友一定不陌生,本来也是准备了一大堆理论要讲,想了想还是直接举例子比较好。 就举最近产品提的一个产品需求吧,简单描述一下:

  1. 对于不同的第三方应用,有不同的频率限制。没有配置则使用默认值
  2. 对于不同的第三方应用,在不同的时间段,有不同的频率限制。没有配置则使用默认值

公司内部都是用C++,当时第一点想到的肯定是配置一个xml文件,里面配置上这些参数,在进程启动的时候,用tinnyxml或者其他xml解析器把xml解析成C++可以辨识的数据结构。

我们来看一下这个xml配置有多复杂:

<freq_config interval="60" pt_relevant="1">
    <app_list>
        <app appid="0" max_day_load="360000">
            <time_range_list>
                <time_range begin_time="1" end_time="5" load_perc="0.1" />
                <time_range begin_time="17" end_time="20" load_perc="0.5" />
            </time_range_list>
            <pt_config ...