Задать вопрос
  • В чем принципиальное различие NAT и PROXY?

    @UPSA
    anykey. Я не программист, я просто ленивый.
    Как правильно написать то ... мозгов то не хватает ...
    Разный layer - Уровень пакетов (туплю - как написать то ?)
    1. прокси - Это Прикладной уровень (а может Сеансовый уровень?) - HTTP, FTP, SMTP и тд.
    2. NAT - Это более низкий уровень, Сетевой уровень (а может Транспортный уровень?) TCP/UDP

    Короче надо читать https://ru.wikipedia.org/wiki/%D0%A1%D0%B5%D1%82%D...
    Ответ написан
    4 комментария
  • Не получается программировать, есть ли смысл продолжать?

    @NinjaNickName
    Web разработчик
    Если хочешь программировать, то конечно имеет смысл, не сдавайся и рано или поздно достигнешь результата. Ну и больше практики конечно же, теория это хорошо, но по факту знания приходят именно с практикой.
    Ответ написан
    Комментировать
  • В чем отличие между статической/динамической типизацией и явной/неявной?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Явная типизация - это вариант статической типизации, при котором требуется явно объявлять типы переменных. При неявной статической типизации решение о типе принимается компилятором на основе размещаемых в переменной данных без явного указания типа (auto в C++).
    Ответ написан
    Комментировать
  • Почему все твердят что MongoDB не подходит для проектов типа интернет магазина и т.д?

    VladimirAndreev
    @VladimirAndreev
    php web dev
    кажется, вы не дошли до транзакций..
    и до того, что у вас есть товар, у него есть вариации, размеры, например.
    а какой-то чудак взял и удалил товар.. а вариации остались. и заказы...
    Ответ написан
    3 комментария
  • Нужен ли графический процессор при терминальном RDP подключении?

    Jump
    @Jump
    Системный администратор со стажем.
    Нужен ли графический процессор при терминальном RDP подключении?
    Нет. RDP подключение никак не использует ресурсы графического процессора, и на работу RDP наличие или отсутствие GPU не влияет.

    В результате чего приходит вывод что для терминального сервера нужен графический процессор,
    Вы сделали неправильные выводы. Такое бывает.

    подключил к нему 30 пользователей с той-же задачей и тут пошли жуткие тормоза, процессор был загружен на 90%.
    Логично. Браузер это приложение активно использующее ресурсы GPU. При его отсутствии нагрузка ложиться на процессор. Этим и обусловлена сильная загрузка процессора.

    На терминальных серверах обычно не используют приложения активно использующие GPU- вроде трехмерных графических редакторов, браузеров, и.т.д.
    А если и используют - тогда для них ставят GPU, и настраивают его работу.
    Ответ написан
    1 комментарий
  • Годится ли такое проектирование в mongodb?

    @frozen_coder
    Java-developer
    Тут всё зависит от того, как эти данные будут использоваться.
    Если нам в первую очередь важен пользователь, то может вообще всё в него запихать.
    Переносить схему один в один - это такое себе занятие. Вы какую проблему этим решаете? Если вам отношения между сущностями важны и вы хотите их со всех сторон использовать, то может не есть кактус и взять реляционную БД?
    Ответ написан
    5 комментариев
  • Как пробросить порт через тоннель в ssh?

    planc
    @planc
    SSH user@185.XXX.XXX.XX -p 2422 -L 80:127.0.0.1:80

    ну и само собой, если needed.website.ru не отдается как стандартный веб сервером, нужно прописать у себя в /etc/hosts:
    127.0.0.1 needed.website.ru

    -L порт:машина:порт_машины
    Определяет заданный порт на локальной (клиентской) машине который будет перенаправлен к заданной машине и порт на удаленной машине. Это реализовано путём назначения доменного подключения "прослушиваемому" порту на стороне локальной машины и всякий раз, когда производится соединение на этот порт, оно будет перенаправлено через защищенный канал и произведено соединение к порту порт_машины удаленной машины. Перенаправление портов моет быть так же указано в файле конфигурации. Только суперпользователь может осуществлять перенаправление привилегированных портов. Адреса IPv6 могут быть указаны с альтернативным синтаксисом: port/host/hostport.
    -R порт:машина:порт_машины
    Указывает заданный порт на удаленной машине (сервере) который будет перенаправлен к заданной машине и локальному порту. Это реализовано путём назначения доменного подключения "прослушиваемому" порту со стороны удаленной машины и всякий раз, когда производится соединение на этот порт, оно будет перенаправлено через защищенный канал и произведено соединение к порту порт_машины локальной машины. Перенаправление портов моет быть так же указано в файле конфигурации. Только суперпользователь может осуществлять перенаправление привилегированных портов. Адреса IPv6 могут быть указаны с альтернативным синтаксисом: port/host/hostport.


    https://www.opennet.ru/man.shtml?topic=ssh&categor...
    Ответ написан
    2 комментария
  • Структуры и классы в чем разница?

    hePPer
    @hePPer
    Структуры - совместимость с языком Си. В С++ структуры и классы эквивалентны, кроме доступа по умолчанию.
    Ответ написан
    1 комментарий
  • Какой программой можно массово заменить расширение файлов на Windows?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Обычный батник с короткой строчкой кода.
    Создаете какой нибудь файл, например переименование.bat пишите в нем конструкцию вроде -
    for /R "E:\Test" %%B in (*.txt) do ren %%B *.exe
    Сохраняете и запускаете.
    Поменяет у всех текстовых файлов в папке E:\Test и подпапках расширение на exe.

    Потренируйтесь на тестовых данных, а то поменяете что-нибудь не то по ошибке...
    Ответ написан
    1 комментарий
  • Как сохранить в памяти и суммировать в число определенную в байтах массу файлов а затем использовать результат?

    myjcom
    @myjcom Куратор тега C++
    https://en.cppreference.com/w/cpp/filesystem
    Если доступен С++17
    #include<iostream>
    #include<filesystem>
    #include<string>
    using namespace std;
    namespace fs = filesystem;
    
    auto getDirectorySize(const fs::path& p)
    {
      uintmax_t size = 0;
      if(fs::is_directory(p))
      {
        for(const auto& f : fs::directory_iterator(p))
        {
          size += f.file_size();
        }
      }
      return size;
    }
    
    int main()
    {
      string directory{ "C:\\TEMP" };
      fs::path dp{ directory };
      
      auto size{ getDirectorySize(dp) };
      cout << "size of "  << directory 
           << " "         << size 
           << " bytes"    << endl;
    }

    Или

    #include<iostream>
    #include<fstream>
    #include<string>
    #include<vector>
    using namespace std;
    
    size_t getFileSize(const string& filename)
    {
      ifstream ifs(filename);
      size_t size = 0;
      if(ifs)
      {
        ifs.seekg(0, ios_base::end);
        size = ifs.tellg();
      }
      return size;
    }
    
    int main()
    {
      vector<string> filenames{
        "C:\\TEMP\\aaa.txt", "C:\\TEMP\\bbb.txt", "C:\\TEMP\\ccc.txt"
      };
    
      size_t size = 0;
    
      for(const string& fn : filenames)
      {
        size += getFileSize(fn);
      }
    
      cout << "Size: " << size << endl;
    }

    Ответ написан
    7 комментариев
  • Почему в консоли на выводе 0?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Строка с форматом неверно составлена.
    printf("%.1f\n","%.1f\n","%.1f\n", fut, m, dm);  // тут ошибка

    printf("%.1f\t%.1f\t%.1f\n", fut, m, dm);
    Ответ написан
    Комментировать
  • Будет ли работать такая схема (интранет)?

    В принципе, будет. Всё зависит от того, как настроить маршруты на роутерах.
    Если сеть маленькая, зачем такие огромные диапазоны? Такими полстраны (утрирую) можно охватить. И, как бы, принято для домашних подсетей использовать 192.168.0.0, а на корпоративные сети 10.0.0.0.
    Так что ставьте одну подсеть 192.168.0.0 и всё в неё. Ну или разбить чуток типа 192.168.1.0, 192.168.2.0...
    Так в каждой подсети пару сотен узлов вполне уживутся.
    Другой нюанс - если подключаемые сторонние роутеры Вам подконтрольны (т.е. Вы распоряжаетесь, какие там будут настройки) - то проблем (почти) нет. Но если административно управляются кем-то ещё, то смотреть надо в сторону BGP, и соответственно, всё намного усложняется. Конечно, если сторонние роутеры, это как клиенты, т.е. не имеют куда-то ещё маршрутов и не нужно иметь связность со всеми - путь так и будут на одном IP каждый, а внутри имеют nat с dhcp или что угодно там делают, главное на своём роутере фильтровать, что куда может уходить-приходить, а что нет.
    Ответ написан
    Комментировать
  • Что изображено на данной картинке?

    fzfx
    @fzfx
    18,5 дм
    код программы на ассемблере в отладчике.
    и причём тут системное администрирование и linux?
    Ответ написан
    2 комментария
  • Как оптимизировать приложение на языке С?

    tsarevfs
    @tsarevfs
    C++ developer
    Используйте профилировщик для поиска проблемных мест. Я работаю с https://developer.nvidia.com/nsight-systems, но есть и другие, в том числе более популярные варианты.
    В первую очередь стоит оптимизировать асимптотическую сложность.
    Дальше можно подумать о распаралеливании на несколько потоков.
    Если уже и так все оптимально, можно посмотреть на микро оптимизации:
    https://habr.com/en/company/intel/blog/257309/
    Ну и кроме того можно использовать CUDA для обработки на GPU
    Ответ написан
    2 комментария
  • Какой программой определить библиотеки используемые исполняемым файлом?

    gbg
    @gbg Куратор тега Windows
    Любые ответы на любые вопросы
    Ответ написан
    Комментировать
  • Как поднять репо на уровень выше в каталоге?

    @Nc_Soft
    Просто сделайте в репозитории папку application/frontend и переместите туда всё (обычный rename). История на файлах сохранится
    Ответ написан
    3 комментария
  • Могут ли коммутаторы третьего уровня L3 (не маршрутизаторы) выполнять коммутацию по частным адресам IPv4, таким как 192.168.0.0 -192.168.255.255?

    Mystray
    @Mystray
    NOC
    1) Коммутаторы 3-го уровня - это и есть "маршрутизаторы" с набором специфичных аппаратных ограничений.
    2) Коммутация, в большинстве случаев, относится к 2-му уровню, а там не имеют значения IP-адреса, важны только MAC. Которые, естественно, будут коммутироваться коммутатором, и до IP-адресов, в таком случае дела нет.
    3) IP-адреса маршрутизируются маршрутизаторами между разными подсетями. За исключением совсем специальных случаев (мультикастовые и зарезервированные особым образом для особых задач), маршрутизатору плевать, какие именно там подсети, лишь бы они были в таблице маршрутов.
    А в случае, если подсеть между узлами одна, то маршрутизатор не нужен, нужна только коммутация и мы возвращаемся к п. 2) и коммутаруем узлы на 2 уровне обычным коммутатором (хоть Л2).

    P.S. Я намеренно исключаю NAT, так как в вопросе о нем ни слова.
    Ответ написан
    4 комментария
  • Есть ли на специализации "Прикладная информатика" физика после 9 класса?

    myjcom
    @myjcom
    Программирование?
    Добрый день, планирую поступать в колледж на специальность прикладная информатика, но дело в том, что у меня очень плохо обстоят дела с физикой.

    Много ли будет физики

    ФГОС специальности 09.02.05 Прикладная информатика (по отраслям)
    Физики там нет, вообще нет.

    после 1 курса

    2 семестра 1-го курса будет физика в рамках школьной программы 10-11 класса, собственно как и остальные предметы. На первом курсе на базе 9 классов вы сжато осваиваете 2 года школы.
    Ответ написан
    Комментировать
  • Как вычислить 9**(9**9) не потратив на это огромное количество времени?

    sergiks
    @sergiks Куратор тега Алгоритмы
    ♬♬
    Алгоритм:
    1. ручкой пишем на бумаге первые несколько степеней 9
    2. в голове появляется догадка
    Ответ написан
    3 комментария
  • Полезно ли долго (и вообще) «велосипедить» в программировании?

    я замечаю что гораздо лучше всё усваиваю когда делаю всё с нуля

    Поверьте - так у всех.

    Но вы обратили внимание, что в школе вам рассказывали про опыты Галилея, а не дали два шарика и не сказали - разберитесь какой из них падает быстрее?

    Представьте что вы велосипедите долго-долго и разобрались с авторизацией и загрузкой файлов вдоль и поперек, а потом все же сталкиваетесь с каким-нибудь фреймворком и смотрите, а там загрузка сделана так же как у вас и вы бы могли не тратить год, на то чтобы дойти до этого, а просто сразу посмотреть. Смотрите на авторизацию и думаете - "о, а чо так тоже можно было?"

    Объем знаний слишком велик чтобы полсностью сгенерировать его самостоятельно. Best practice много и ко всем сразу сам не придешь. Чему-то учиться придется.
    Поэтому наилучшая схема чуть-чуть повелосипедить. Изучить пару фреймворков. Попробовать опять повелосипедить. Изучить еще один, а там, может быть, присоединиться к разработке какого-то..
    Ответ написан
    Комментировать