Json Url Query всегда генерирует одинаковые значения

У меня есть проект Asp.Net MVC. Я генерирую JSON из JsonResult. Однако я не могу использовать URL-запрос. Он всегда получит все значения.

Вот мой метод Json Result:

 public JsonResult GetAllBanks()
    {
        BankService _srvBank = new BankService();
        List<TblBank> allBanks = _srvBank.GetBanks();
        List<Bank> banks = new List<Bank>();
        foreach (var bank in allBanks)
        {
            Bank b = new Bank();
            b.value = bank.BankName;
            banks.Add(b);
        }
        return Json(banks,JsonRequestBehavior.AllowGet);
    }

Здесь метод json генерирует:

http://localhost:6845/supplier/suppliercompany/getallbanks

[{"value":"Adabank A.Ş."},{"value":"Akbank T.A.Ş."},
 {"value":"Aktif Yatırım Bankası A.Ş."},{"value":"Albaraka Türk Katılım Bankası A.Ş."},
  {"value":"Alternatifbank A.Ş."},{"value":"Anadolubank A.Ş."},
  {"value":"Arap Türk Bankası A.Ş"},{"value":"Bank Mellat Türkiye"}]

Однако URL-запрос не работает. Я всегда получаю одинаковые значения:

http://localhost:6845/supplier/suppliercompany/getallbanks?value=sometext

 [{"value":"Adabank A.Ş."},{"value":"Akbank T.A.Ş."},
 {"value":"Aktif Yatırım Bankası A.Ş."},{"value":"Albaraka Türk Katılım Bankası A.Ş."},
  {"value":"Alternatifbank A.Ş."},{"value":"Anadolubank A.Ş."},
  {"value":"Arap Türk Bankası A.Ş"},{"value":"Bank Mellat Türkiye"}]

1 ответ

Да, проблема в том, что вам нужно создать приложение для его профилирования.

На работе у нас было написано несколько проектов, которые мы тестировали перед тем, как поместить их в наши основные блоки. Мы были очень удивлены, обнаружив критические проблемы с производительностью обоих; один был написан на CakePHP, а другой был написан с использованием Drupal. Я не думаю, что это выдвигает на первый план проблему с любой структурой или CMS, кроме необходимости выполнять профилирование и нагрузочное тестирование на любом сайте, который собирается получить значительный трафик. В обоих случаях проблема была в том, что сделал разработчик, а не в характеристиках программной платформы. Например, был рекурсивный вызов функции, созданный разработчиком в проекте Cake, который создавал экземпляр всего объекта Cake при каждой рекурсии, и это могло бы уничтожить сервер, если бы он работал под нагрузкой.

По моему мнению, производительность не должна быть решающим фактором при выборе структуры; объективные различия, скорее всего, будут незначительными, и то, как вы их используете, скорее всего, вызовет гораздо больше проблем с производительностью, чем внутренняя производительность платформы.

Я считаю, что для масштабирования любого PHP-приложения, которое будет работать под нагрузкой, вам понадобится кэш кода операции, и вам нужно будет писать в интеллектуальном кешировании контента, используя что-то вроде memcached или что-то еще, что поддерживает встроенная система кэширования.

Другие вопросы по тегам