Я использовал некоторые структуры для кэширования какого-то временного списка. И я хотел бы найти некоторые решения по сокращению выделенной памяти для поддержания производительности. Компоненты структуры приведены ниже.
structure LatestInfo
{
std::string visitedWebsites;
std::string watchedVideo;
std::string userId;
std::string userName;
unsigned int lastLoginTime;
std::string contentsRating;
//and so on
}
И у меня есть std::vector<LatestInfo> latestList
для хранения LatestInfo
структуры.
Есть много LastestInfo
в latestList
, и оно становится больше.
Таким образом, в нашей системе выделяется много памяти (более 200 МБ).
Не только LatestInfo
регулярно обновляется (каждые 2 часа), но и производительность очень важна, мы храним некоторые фиксированные значения только в БД (SQLite).
Итак, я хотел бы уменьшить выделенную память без использования БД.
IMO, если std :: string может быть сжатым, это было бы хорошо и потребовало бы минимальных изменений. Знаете ли вы какие-нибудь открытые исходные коды или библиотеки для сжатия, чтобы уменьшить выделенную память?
или у вас есть лучшие решения?
Спасибо.