• Можно на пальцах объяснить, про суть localhost и порты?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Если человек, не знакомый с арифметикой захочет понять, что означает "два плюс три равно пять", ему недостаточно объяснить, что такое "два", или что такое "плюс"! Так же и тут. Для понимания, что такое localhost, сначала нужно понять, что такое хост вообще, что такое сеть, что такое имя хоста, что такое сервер, как это все связано с адресами и номерами портов, а те - с, собственно, одним конкретным компом (который, в зависимости от контекста, могут называть и "хостом", и "сервером", и "localhost"). Так что, на всякий случай:

    Комп, подключенный к сети, называют хостом. К нему обращаются по уникальному адресу или имени. Одному имени (т.е. одному хосту) могут соответствовать несколько разных адресов.

    Когда к хосту обращаются по имени, это имя сначала разрешается в адрес хоста, по которому, собственно, и происходит обращение. В сети этим обычно занимается DNS (который, кстати говоря, тоже является сервером... но это уже другая история, которая сейчас не так важна для понимания сути), но если DNS нет, соответствие имен-адресов можно прописать в файле hosts на самом хосте. Если некое имя хоста и там не прописано, обратиться к нему по имени не удастся... хотя прямое обращение по адресу будет работать.

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

    На одном компе (=хосте, сервере) может одновременно выполняться несколько разных программ-серверов. Для того, чтоб обратиться к конкретной из них (адрес-то у всех один и тот же!), в протоколе TCP/IP используются разные номера портов.

    Если на компе запущен, например, HTTP сервер (= Webserver, например, Nginx или Apache), он "слушает" порт 80, а если не запущен, порт 80 никто не слушает, и если обратиться к такому хосту (= серверу, компу) по его адресу в порт 80, никакого ответа не придет... хотя сам хост и будет доступен.

    Для разных общеизвестных типов программ-серверов (в этом случае также говорят о "сервисах" или же "протоколах", что в данном контексте практически одно и то же) принято использовать общеизвестные номера портов, а для наиболее распространенных (как тот же HTTP) можно даже не указывать номер порта при обращении, как мы обычно и делаем в строке броузера, т.к. клиент автоматически использует номер порта по умолчанию, в данном случае 80. Но, в принципе, любой сервис можно (переконфигурировав) использовать на любом порту... если, конечно, в этом есть смысл. Единственно, что нельзя - одновременно использовать разные серверы на одном порту.

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

    localhost - "общеизвестное" имя компа для самого себя и ему соответствует IP адрес 127.0.0.1. Это - общепринятая договоренность, которую просто нужно знать. Если говорят "установить сервер на localhost", это означает "установить на тот самый комп, с которого и обращаться к этому серверу".
    Ответ написан
    1 комментарий
  • Как получить доступ ssh Xiaomi router 3PRO?

    DIvan2000
    @DIvan2000 Автор вопроса
    решил этот вопрос, ввиду моей неопытности пользования ssh консолью, я не знал что пароль при вводе не отображается, и написал туда случайна всякую билеберду сам того не подозревая
    Ответ написан
    Комментировать
  • Мотивация для разработчика. Как мотивировать себя/команду работать продуктивно?

    Merovei
    @Merovei
    Варианта 3

    Работайте с теми, у кого есть мотивация
    Помните комедию Леонида Гайдая “Напарник”? Как только ни пытались “вдохновить” 40-летнего лентяя Федю. Рассказывали о космических кораблях, Большом театре, танцевали чечётку. В итоге Шурику пришлось провести разъяснительную работу при помощи кнута. Как бы Вы ни старались воодушевить сотрудников, всегда найдутся такие, которых замотивировать нельзя. От слова совсем. От них лучше избавляться ещё до начала сотрудничества, чтобы потом работать только с адекватными людьми, а не с “гражданами алкоголиками, тунеядцами и хулиганами”.

    Подключайте нематериальные активы
    Деньги никто не отменял, но лучше работают сотрудники не только с зарплатой в голове. Одни ценят статус — предлагайте прозрачный рост. Другие любят учиться — приглашайте на тренинги. Третьи создают из себя бренд — дайте им шанс выступать на конфах. Например, в некоторых фирмах проводят еженедельные презентации по прочитанным книгам. Этот ход решает несколько задач. Докладчик получает признание, персонал — профессионализм, люди лучше узнают друг друга, легче взаимодействуют.

    Внедряйте CRM-систему
    По сути это нервная система бизнеса, которая выгодна как руководителю, так и подчинённым. Сам факт контроля (внешнего или внутреннего) дисциплинирует. Начальник контролирует, насколько продуктивен сотрудник, тот всегда может отчитаться о работе. Заходя в CRM, пользователь видит карточки с активными проектами, списки дел, переписку с коллегами, пересылаемые файлы. На рынке масса бесплатных решений до 5 человек, до 12 человек. Не подходит CRM, заводите органайзер, планировщик, трекер привычек и т.п.
    Ответ написан
    Комментировать