자바 백 엔 드 에 대한 상세 한 설명
오늘 우 리 는 자바 개발 엔지니어 가 도대체 개발 한 것 이 무엇 인지 이야기 합 시다.정확히 말 하면 자바 백 엔 드 는 무엇 을 하고 있 습 니까?
자바 는 백 엔 드 언어 라 는 것 을 잘 알 고 있 습 니 다.백 엔 드 는 서버 를 말 합 니 다.서버 코드 는 보통 서버 에서 실 행 됩 니 다.보통 자바 프로그램 을 실행 하 는 서버 는 Linux 서버 입 니 다.
이 서버 들 은 인터넷 회사 에서 일반적으로 기계실 이라는 곳 에 놓 여 있 기 때문에 우리 와 같은 자바 프로그래머 의 코드 는 일반적으로 이 기계실 안의 서버 에서 운행 된다.
자바 에 가상 컴퓨터 라 는 개념 이 있 습 니 다.이 를 안 드 로 이 드 시 뮬 레이 터 로 이해 할 수 있 습 니 다.예 를 들 어 컴퓨터 에 안 드 로 이 드 시 뮬 레이 터 를 설치 하면 안 드 로 이 드 응용 프로그램 을 실행 할 수 있 습 니 다.예 를 들 어 앱,모 바 일 게임 등 입 니 다.
그래서 컴퓨터 에 JDK 라 는 것 을 설 치 했 을 때 컴퓨터 에 JRE 즉 자바 운영 환경 이 있 습 니 다.이 운영 환경 이 있 으 면 자바 응용 프로그램 을 실행 할 수 있 습 니 다.
자바 프로그램 이 컴퓨터 에서 어떻게 작 동 하 는 지 알 게 된 후에 우 리 는 평소에 배 운 자바 기초 지식 을 다시 이야기 합 니 다.그들 은 도대체 무슨 소 용이 있 습 니까?
사실 평소에 이 자바 기초 문법 은 모두 당신 이 코드 를 쓰 는 기초 지식 일 뿐 영어 의 26 개의 자모 에 해당 합 니 다.흔히 볼 수 있 는 기본 유형 변수,for 순환,if else 등 기본 문법 이 있 습 니 다.이런 기초 지식 을 습득 한 후에 당신 은 손 으로 간단 한 코드 를 쓸 수 있 습 니 다.
그 밖 에 자바 는 비교적 특별한 개념 도 있다.예 를 들 어 대상 을 대상 으로 하 는 특성,그 중에서 유형,인터페이스 등 개념 이 있다.왜 자바 가 이런 것들 을 도입 하려 고 합 니까?사실은 사용자 가 디자인,추상,프로 그래 밍 을 더욱 잘 하도록 하려 는 것 입 니 다.
초보 자 에 게 있어 서,너 는 특별히 깊이 이해 할 필요 가 없다.왜냐하면 이런 것들 은 네가 진정 으로 코드 를 쓴 후에 야 점차적으로 이해 할 수 있 기 때문이다.
기본 지식 을 말 한 후에 저도 궁금 할 것 같 습 니 다.자바 에서 자주 언급 하 는 집합 류 는 무엇 입 니까?현실 생활 에서 많은 장면 이 있 기 때문에 집합 류 를 사용 해 야 합 니 다.예 를 들 어 사용자 이름 목록,어떻게 저장 하 시 겠 습 니까?
당신 은 하나의 List 로 할 수 있 습 니 다.그 렇 기 때문에 집합 류 의 역할 은 프로 그래 밍 에서 데 이 터 를 더 잘 저장 하 는 것 입 니 다.
사실은 집합 류 의 개념 은 최초 로 데이터 구조 에서 기원 되 었 다.컴퓨터 에 많은 특수 한 데이터 저장 구조 가 있 기 때문에 예 를 들 어 파일 트 리,예 를 들 어 링크 와 배열 등 구조 가 있 기 때문에 컴퓨터 이론 은 이런 데 이 터 를 저장 하 는 모델 을 흔히 볼 수 있 는 구조 로 추상 화하 여 데이터 구조 라 고 통칭 한다.
그렇다면 자바 의 병발 프로 그래 밍 은 무엇 을 하 는 것 일 까?자바 의 다 중 스 레 드 는 컴퓨터 의 CPU 핵심 을 잘 이용 하기 위해 병발 프로 그래 밍 을 통 해 프로그램의 병발 효율 을 높 일 수 있다.
그러나 동시 프로 그래 밍 뒤에 운영 체제 의 지원 과 컴퓨터 하드웨어 의 지원 이 필요 합 니 다.따라서 다 중 스 레 드 를 완전히 이해 하려 면 자바 의 Thread 나 스 레 드 풀 만 이해 하 는 것 이 아니 라 운영 체제 와 계산기 구성 원 리 를 이해 해 야 합 니 다.
병렬 프로 그래 밍 과 유사 합 니 다.자바 에 도 네트워크 프로 그래 밍 이라는 개념 이 있 습 니 다.자바 의 네트워크 프로 그래 밍 은 다른 언어 와 대동소이 합 니 다.사실은 TCP/IP 프로 토 콜 을 바탕 으로 이 루어 진 API 입 니 다.네트워크 프로 그래 밍 을 통 해 프로그램 에서 전송 하고 자 하 는 데 이 터 를 네트워크 의 다른 한 끝 에 전송 할 수 있 습 니 다.네트워크 프로 그래 밍 과 병렬 프로 그래 밍 이 있 은 후에 자바 프로그래머 의 에 너 지 는 이미 매우 큽 니 다.
이 몇 가 지 를 말 한 후에 다시 이야기 하 자.우리 가 흔히 말 하 는 자바 백 엔 드 기술 이 도대체 무엇 인지 알 리 페 이 를 예 로 들 자.예전 의 알 리 페 이 사용자 수가 많 지 않 았 고 서버 한 대,데이터 베 이 스 는 모든 업 무 를 지원 할 수 있 었 다.
알 리 페 이의 사용자 가 점점 많아 질 때 한 대의 서버 가 수많은 사용자 의 수 요 를 동시에 만족 시 키 지 못 해 여러 대의 서버 가 등장 하기 시작 했다.여러 대의 서버 가 하나의 클 러 스 터 를 구성 했다.사용 자 는 부하 균형 을 통 해 이 서버 를 방문 할 수 있 고 모든 사용자 가 서로 다른 기계 에 접근 할 수 있다.이렇게 하면 분류 효 과 를 얻 을 수 있다.서버 의 압력 이 줄어든다.
데이터 베 이 스 는 데이터 의 신뢰성 을 확보 해 야 하기 때문에 만약 에 특정한 데이터 베 이 스 를 끊 고 백업 하지 않 으 면 이 데 이 터 는 접근 할 수 없습니다.이것 은 대형 시스템 에서 나타 나 지 못 하기 때문에 데이터 뱅 크 의 주종 배치 가 있 습 니 다.
그러나 사실은 업무 발전 에 따라 데이터 뱅 크 의 압력 도 점점 커지 고 있다.주요 배치 가 데이터 뱅 크 의 방문 성능 문 제 를 해결 하지 못 하기 때문에 우 리 는 라 이브 러 리 분 표를 해 야 한다.데이터 뱅 크 의 주 비 를 바탕 으로 우 리 는 데이터 양 이 많은 시 계 를 여러 개의 표 로 분해 하고 데이터 베 이 스 를 서로 다른 데이터 로 분류 할 것 이다.예 를 들 어 100 개의 라 이브 러 리 등 이다.100 개의 분 표 는 하나의 데이터 표를 10000 개의 데이터 표 로 나 누 는 것 과 같다.
이때 또 하나의 문제 가 발생 했다.만약 에 하나의 데이터베이스 에 여러 개의 라 이브 러 리 가 있 고 라 이브 러 리 가 끊 어 질 때 주종 전환 을 해 야 할 때 주비 데이터베이스 간 의 데이터 가 일치 하지 않 을 수 있다.이것 도 분포 식 이론 연구 의 문제 중 하나 이다.비교적 복잡 하기 때문에 우 리 는 여기 서 생략 하고 말 하지 않 는 다.
방금 분포 식 기술 을 말 했 는데 사실은 부하 균형,라 이브 러 리 분 표 는 모두 분포 식 기술 의 실현 이다.만약 에 라 이브 러 리 분 표를 만 들 고 싶 지 않다 면 데이터 베이스 방문 의 압력 을 줄 일 수 있 는 방법 이 무엇 입 니까?그래서 캐 시가 나 타 났 습 니 다.캐 시 는 서버 가 먼저 캐 시 에 요청 을 할 수 있 습 니 다.캐 시 된 데 이 터 는 보통 메모리 에 있 기 때문에 접근 속도 가 매우 빠 릅 니 다.이 요청 들 은 데이터 베 이 스 를 거치 지 않 아 도 됩 니 다.
업무 가 발전 함 에 따라 캐 시 의 단일 압력 도 비교적 클 수 있 기 때문에 분포 식 캐 시 는 발생 한다.일반적으로 캐 시 는 데이터 의 신뢰성 을 확보 하기 어렵다.왜냐하면 그들의 데 이 터 는 잃 어 버 릴 수 있 고 캐 시 는 일부 데이터 만 저장 할 수 있 기 때문에 문제 가 해결 되 지 않 는 다.
그래서 일부 업무 의 요 구 량 이 매우 많 을 때 캐 시 만으로 도 문 제 를 해결 할 수 없습니다.이때 우 리 는 메시지 대기 열 을 통 해 대 유량 과 요청 문 제 를 해결 할 수 있 습 니 다.
우 리 는 메시지 대기 열 을 통 해 일부 요청 메 시 지 를 저장 한 다음 에 서버 가 요청 을 처리 하 는 능력 에 따라 메 시 지 를 점차적으로 꺼 내 고 이 메 시 지 를 점차적으로 처리 하면 높 은 병발 문 제 를 잘 해결 할 수 있 습 니 다.물론 전 제 는 메시지 대기 열 이 메시지 저장 의 신뢰성 을 확보 해 야 한 다 는 것 이다.이것 도 대부분의 메시지 대기 열 이 보장 하 는 능력 이다.
단숨에 이렇게 많은 이 야 기 를 한 것 은 자바 백 엔 드 의 대략적인 모습 을 소개 한 셈 입 니 다.그 밖 에 도 말 하지 못 한 것 이 많 습 니 다.정말 다 하려 면 밤새 다 말 할 수 없습니다.
전체적으로 보면 자바 백 엔 드 기술 은 어렵 거나 간단 하지 않 습 니 다.저 는 이런 내용 을 모두 통속 적 이 고 이해 하기 쉽게 말 하 겠 습 니 다.사실은 모든 기술 의 배후 에 매우 복잡 한 실현 원리 가 있 습 니 다.물론 자바 백 엔 드 기술 의 전체적인 개념 을 이해 한 후에 앞으로 의 학습 에 더욱 도움 이 될 것 이 라 고 믿 습 니 다.
이상 은 자바 백 엔 드 에서 소개 한 상세 한 내용 입 니 다.저희 에 대한 지지 에 감 사 드 립 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.