getImage = async function({ imageUrl, width, height, fit }) {
  const key = getMediaKey({ imageUrl, width, height, fit });
  const obj = await redis.client.hgetall(key);
  if (isEmpty(obj))
    return null;
  obj.size = parseInt(obj.size) || 0;
  if (!obj.filename)
    obj.filename = getMediaFilename({
      imageUrl,
      width,
      height,
      fit,
      size: obj.size
    });
  obj.filePath = path.join(mediaDir, obj.filename);
  obj.s3Path = getMediaS3Path(obj.filename);
  obj.expire = parseInt(obj.expire) || 0;
  const now = new Date().getTime();
  obj.available = now <= obj.expire;
  return obj;
}
Get the image entry { available, filename, filePath, s3Path, expire, size }
@param {object} param0